Knowledge Sources - Create Or Update

Creates a new knowledge source or updates an knowledge source if it already exists.

PUT {endpoint}/knowledgesources('{sourceName}')?api-version=2026-05-01-preview

URI Parameters

Name In Required Type Description
endpoint
path True

string (uri)

The endpoint URL of the search service.

sourceName
path True

string

The name of the knowledge source.

api-version
query True

string

minLength: 1

The API version to use for this operation.

Request Header

Name Required Type Description
Accept

Accept

The Accept header.

If-Match

string

Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.

If-None-Match

string

Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.

Prefer True

Prefer

For HTTP PUT requests, instructs the service to return the created/updated resource on success.

x-ms-client-request-id

string (uuid)

An opaque, globally-unique, client-generated string identifier for the request.

Request Body

The request body can be one of the following:

Name Description
AzureBlobKnowledgeSource

Configuration for Azure Blob Storage knowledge source.

FabricDataAgentKnowledgeSource

Configuration for Fabric Data Agent knowledge source.

FabricOntologyKnowledgeSource

Configuration for Fabric Ontology knowledge source.

FileKnowledgeSource

Configuration for File knowledge source that supports direct file upload and indexing.

IndexedOneLakeKnowledgeSource

Configuration for OneLake knowledge source.

IndexedSharePointKnowledgeSource

Configuration for SharePoint knowledge source.

IndexedSqlKnowledgeSource

Configuration for indexed SQL knowledge source.

McpServerKnowledgeSource

Configuration for a knowledge source backed by an MCP (Model Context Protocol) server.

RemoteSharePointKnowledgeSource

Configuration for remote SharePoint knowledge source.

SearchIndexKnowledgeSource

Knowledge Source targeting a search index.

WebKnowledgeSource

Knowledge Source targeting web results.

WorkIQKnowledgeSource

Configuration for WorkIQ knowledge source.

AzureBlobKnowledgeSource

Configuration for Azure Blob Storage knowledge source.

Name Required Type Description
azureBlobParameters True

AzureBlobKnowledgeSourceParameters

The type of the knowledge source.

kind True string:

azureBlob

The type of the knowledge source.

name True

string

The name of the knowledge source.

@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

FabricDataAgentKnowledgeSource

Configuration for Fabric Data Agent knowledge source.

Name Required Type Description
fabricDataAgentParameters True

FabricDataAgentKnowledgeSourceParameters

The parameters for the Fabric Data Agent knowledge source.

kind True string:

fabricDataAgent

The type of the knowledge source.

name True

string

The name of the knowledge source.

@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

FabricOntologyKnowledgeSource

Configuration for Fabric Ontology knowledge source.

Name Required Type Description
fabricOntologyParameters True

FabricOntologyKnowledgeSourceParameters

The parameters for the Fabric Ontology knowledge source.

kind True string:

fabricOntology

The type of the knowledge source.

name True

string

The name of the knowledge source.

@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

FileKnowledgeSource

Configuration for File knowledge source that supports direct file upload and indexing.

Name Required Type Description
fileParameters True

FileKnowledgeSourceParameters

The parameters for the File knowledge source.

kind True string:

file

The type of the knowledge source.

name True

string

The name of the knowledge source.

@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

IndexedOneLakeKnowledgeSource

Configuration for OneLake knowledge source.

Name Required Type Description
indexedOneLakeParameters True

IndexedOneLakeKnowledgeSourceParameters

The parameters for the knowledge source.

kind True string:

indexedOneLake

The type of the knowledge source.

name True

string

The name of the knowledge source.

@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

IndexedSharePointKnowledgeSource

Configuration for SharePoint knowledge source.

Name Required Type Description
indexedSharePointParameters True

IndexedSharePointKnowledgeSourceParameters

The parameters for the knowledge source.

kind True string:

indexedSharePoint

The type of the knowledge source.

name True

string

The name of the knowledge source.

@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

IndexedSqlKnowledgeSource

Configuration for indexed SQL knowledge source.

Name Required Type Description
indexedSqlParameters True

IndexedSqlKnowledgeSourceParameters

The parameters for the SQL knowledge source.

kind True string:

indexedSql

The type of the knowledge source.

name True

string

The name of the knowledge source.

@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

McpServerKnowledgeSource

Configuration for a knowledge source backed by an MCP (Model Context Protocol) server.

Name Required Type Description
kind True string:

mcpServer

The type of the knowledge source.

mcpServerParameters True

McpServerKnowledgeSourceParameters

The parameters for the MCP server knowledge source.

name True

string

The name of the knowledge source.

@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

RemoteSharePointKnowledgeSource

Configuration for remote SharePoint knowledge source.

Name Required Type Description
kind True string:

remoteSharePoint

The type of the knowledge source.

name True

string

The name of the knowledge source.

@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

remoteSharePointParameters

RemoteSharePointKnowledgeSourceParameters

The parameters for the remote SharePoint knowledge source.

SearchIndexKnowledgeSource

Knowledge Source targeting a search index.

Name Required Type Description
kind True string:

searchIndex

The type of the knowledge source.

name True

string

The name of the knowledge source.

searchIndexParameters True

SearchIndexKnowledgeSourceParameters

The parameters for the knowledge source.

@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

WebKnowledgeSource

Knowledge Source targeting web results.

Name Required Type Description
kind True string:

web

The type of the knowledge source.

name True

string

The name of the knowledge source.

@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

webParameters

WebKnowledgeSourceParameters

The parameters for the web knowledge source.

WorkIQKnowledgeSource

Configuration for WorkIQ knowledge source.

Name Required Type Description
kind True string:

workIQ

The type of the knowledge source.

name True

string

The name of the knowledge source.

@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

Responses

Name Type Description
200 OK KnowledgeSource:

The request has succeeded.

201 Created KnowledgeSource:

The request has succeeded and a new resource has been created as a result.

Other Status Codes

ErrorResponse

An unexpected error response.

Security

api-key

Type: apiKey
In: header

OAuth2Auth

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/v2.0/authorize

Scopes

Name Description
https://search.azure.com/.default

Examples

SearchServiceCreateOrUpdateKnowledgeSource
SearchServiceCreateOrUpdateKnowledgeSourceAzureBlob
SearchServiceCreateOrUpdateKnowledgeSourceFabricDataAgent
SearchServiceCreateOrUpdateKnowledgeSourceFabricOntology
SearchServiceCreateOrUpdateKnowledgeSourceIndexedOneLake
SearchServiceCreateOrUpdateKnowledgeSourceIndexedSharePoint
SearchServiceCreateOrUpdateKnowledgeSourceMcpServer
SearchServiceCreateOrUpdateKnowledgeSourceWeb

SearchServiceCreateOrUpdateKnowledgeSource

Sample request

PUT https://previewexampleservice.search.windows.net/knowledgesources('ks-preview-test')?api-version=2026-05-01-preview





{
  "searchIndexParameters": {
    "searchIndexName": "preview-test",
    "sourceDataFields": [
      {
        "name": "description"
      },
      {
        "name": "category"
      }
    ],
    "searchFields": [
      {
        "name": "*"
      }
    ],
    "semanticConfigurationName": "testconfig"
  },
  "name": "ks-preview-test",
  "description": "Description of the knowledge source.",
  "kind": "searchIndex",
  "@odata.etag": "0x1234568AE7E58A1",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  }
}

Sample response

{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "searchIndex",
  "description": "Description of the knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "searchIndexParameters": {
    "searchIndexName": "preview-test",
    "semanticConfigurationName": "testconfig",
    "sourceDataFields": [
      {
        "name": "description"
      },
      {
        "name": "category"
      }
    ],
    "searchFields": [
      {
        "name": "*"
      }
    ]
  }
}
{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "searchIndex",
  "description": "Description of the knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "searchIndexParameters": {
    "searchIndexName": "preview-test",
    "semanticConfigurationName": "testconfig",
    "sourceDataFields": [
      {
        "name": "description"
      },
      {
        "name": "category"
      }
    ],
    "searchFields": [
      {
        "name": "*"
      }
    ]
  }
}

SearchServiceCreateOrUpdateKnowledgeSourceAzureBlob

Sample request

PUT https://previewexampleservice.search.windows.net/knowledgesources('ks-preview-test')?api-version=2026-05-01-preview





{
  "azureBlobParameters": {
    "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net ",
    "containerName": "test-container",
    "folderPath": "test-path",
    "isADLSGen2": false,
    "ingestionParameters": {
      "identity": {
        "userAssignedIdentity": "/my/userassigned/id",
        "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity"
      },
      "embeddingModel": {
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "model",
          "apiKey": "api-key",
          "modelName": "text-embedding-3-large"
        },
        "kind": "azureOpenAI"
      },
      "chatCompletionModel": {
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "myDeployment",
          "apiKey": "api-key",
          "modelName": "gpt-4o-mini"
        },
        "kind": "azureOpenAI"
      },
      "disableImageVerbalization": false,
      "ingestionSchedule": {
        "interval": "P1D",
        "startTime": "2025-01-07T19:30:00Z"
      },
      "ingestionPermissionOptions": [
        "userIds",
        "groupIds",
        "rbacScope"
      ],
      "contentExtractionMode": "standard",
      "aiServices": {
        "uri": "https://my-ai-service.azure.com/",
        "apiKey": "api-key"
      }
    }
  },
  "name": "ks-preview-test",
  "description": "Description of the knowledge source.",
  "kind": "azureBlob",
  "@odata.etag": "0x1234568AE7E58A1",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  }
}

Sample response

{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "azureBlob",
  "description": "Description of the knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "azureBlobParameters": {
    "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net ",
    "containerName": "test-container",
    "folderPath": "test-path",
    "isADLSGen2": false,
    "ingestionParameters": {
      "disableImageVerbalization": false,
      "ingestionPermissionOptions": [
        "userIds",
        "groupIds",
        "rbacScope"
      ],
      "contentExtractionMode": "standard",
      "identity": {
        "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
        "userAssignedIdentity": "/my/userassigned/id"
      },
      "embeddingModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "model",
          "apiKey": "api-key",
          "modelName": "text-embedding-3-large"
        }
      },
      "chatCompletionModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "myDeployment",
          "apiKey": "api-key",
          "modelName": "gpt-4o-mini"
        }
      },
      "ingestionSchedule": {
        "interval": "P1D",
        "startTime": "2024-06-06T00:01:50.265Z"
      },
      "aiServices": {
        "uri": "https://my-ai-service.azure.com/",
        "apiKey": "api-key"
      }
    },
    "createdResources": {
      "datasource": "ks-preview-test-datasource",
      "indexer": "ks-preview-test-indexer",
      "skillset": "ks-preview-test-skillset",
      "index": "ks-preview-test-index"
    }
  }
}
{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "azureBlob",
  "description": "Description of the knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "azureBlobParameters": {
    "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net ",
    "containerName": "test-container",
    "folderPath": "test-path",
    "isADLSGen2": false,
    "ingestionParameters": {
      "disableImageVerbalization": false,
      "ingestionPermissionOptions": [
        "userIds",
        "groupIds",
        "rbacScope"
      ],
      "contentExtractionMode": "standard",
      "identity": {
        "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
        "userAssignedIdentity": "/my/userassigned/id"
      },
      "embeddingModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "model",
          "apiKey": "api-key",
          "modelName": "text-embedding-3-large"
        }
      },
      "chatCompletionModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "myDeployment",
          "apiKey": "api-key",
          "modelName": "gpt-4o-mini"
        }
      },
      "ingestionSchedule": {
        "interval": "P1D",
        "startTime": "2024-06-06T00:01:50.265Z"
      },
      "aiServices": {
        "uri": "https://my-ai-service.azure.com/",
        "apiKey": "api-key"
      }
    },
    "createdResources": {
      "datasource": "ks-preview-test-datasource",
      "indexer": "ks-preview-test-indexer",
      "skillset": "ks-preview-test-skillset",
      "index": "ks-preview-test-index"
    }
  }
}

SearchServiceCreateOrUpdateKnowledgeSourceFabricDataAgent

Sample request

PUT https://previewexampleservice.search.windows.net/knowledgesources('ks-fabric-agent-test')?api-version=2026-05-01-preview





{
  "fabricDataAgentParameters": {
    "workspaceId": "fakeWorkspaceId",
    "dataAgentId": "fakeAgentId"
  },
  "name": "ks-fabric-agent-test",
  "description": "Description of the Fabric Data Agent knowledge source.",
  "kind": "fabricDataAgent",
  "@odata.etag": "0x1234568AE7E58A1",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  }
}

Sample response

{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-fabric-agent-test",
  "kind": "fabricDataAgent",
  "description": "Description of the Fabric Data Agent knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "fabricDataAgentParameters": {
    "workspaceId": "fakeWorkspaceId",
    "dataAgentId": "fakeAgentId"
  }
}
{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-fabric-agent-test",
  "kind": "fabricDataAgent",
  "description": "Description of the Fabric Data Agent knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "fabricDataAgentParameters": {
    "workspaceId": "fakeWorkspaceId",
    "dataAgentId": "fakeAgentId"
  }
}

SearchServiceCreateOrUpdateKnowledgeSourceFabricOntology

Sample request

PUT https://previewexampleservice.search.windows.net/knowledgesources('ks-fabricontology-test')?api-version=2026-05-01-preview





{
  "fabricOntologyParameters": {
    "workspaceId": "12345678-1234-1234-1234-123456789abc",
    "ontologyId": "ontology-456"
  },
  "name": "ks-fabricontology-test",
  "description": "Description of the Fabric Ontology knowledge source.",
  "kind": "fabricOntology",
  "@odata.etag": "0x1234568AE7E58A1",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  }
}

Sample response

{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-fabricontology-test",
  "kind": "fabricOntology",
  "description": "Description of the Fabric Ontology knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "fabricOntologyParameters": {
    "workspaceId": "12345678-1234-1234-1234-123456789abc",
    "ontologyId": "ontology-456"
  }
}
{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-fabricontology-test",
  "kind": "fabricOntology",
  "description": "Description of the Fabric Ontology knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "fabricOntologyParameters": {
    "workspaceId": "12345678-1234-1234-1234-123456789abc",
    "ontologyId": "ontology-456"
  }
}

SearchServiceCreateOrUpdateKnowledgeSourceIndexedOneLake

Sample request

PUT https://previewexampleservice.search.windows.net/knowledgesources('ks-preview-test')?api-version=2026-05-01-preview





{
  "indexedOneLakeParameters": {
    "fabricWorkspaceId": "ResourceId=fakeWorkspaceId",
    "lakehouseId": "fakeLakehouseId",
    "targetPath": "testfolder",
    "ingestionParameters": {
      "identity": {
        "userAssignedIdentity": "/my/userassigned/id",
        "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity"
      },
      "embeddingModel": {
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "model",
          "apiKey": "api-key",
          "modelName": "text-embedding-3-large"
        },
        "kind": "azureOpenAI"
      },
      "chatCompletionModel": {
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "myDeployment",
          "apiKey": "api-key",
          "modelName": "gpt-4o-mini"
        },
        "kind": "azureOpenAI"
      },
      "disableImageVerbalization": false,
      "ingestionSchedule": {
        "interval": "P1D",
        "startTime": "2025-01-07T19:30:00Z"
      },
      "ingestionPermissionOptions": [
        "userIds",
        "groupIds",
        "rbacScope"
      ],
      "contentExtractionMode": "standard",
      "aiServices": {
        "uri": "https://my-ai-service.azure.com/",
        "apiKey": "api-key"
      }
    }
  },
  "name": "ks-preview-test",
  "description": "Description of the OneLake knowledge source.",
  "kind": "indexedOneLake",
  "@odata.etag": "0x1234568AE7E58A1",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  }
}

Sample response

{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "indexedOneLake",
  "description": "Description of the OneLake knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "indexedOneLakeParameters": {
    "fabricWorkspaceId": "ResourceId=fakeWorkspaceId",
    "lakehouseId": "fakeLakehouseId",
    "targetPath": "testfolder",
    "ingestionParameters": {
      "disableImageVerbalization": false,
      "ingestionPermissionOptions": [
        "userIds",
        "groupIds",
        "rbacScope"
      ],
      "contentExtractionMode": "standard",
      "identity": {
        "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
        "userAssignedIdentity": "/my/userassigned/id"
      },
      "embeddingModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "model",
          "apiKey": "api-key",
          "modelName": "text-embedding-3-large"
        }
      },
      "chatCompletionModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "myDeployment",
          "apiKey": "api-key",
          "modelName": "gpt-4o-mini"
        }
      },
      "ingestionSchedule": {
        "interval": "P1D",
        "startTime": "2024-06-06T00:01:50.265Z"
      },
      "aiServices": {
        "uri": "https://my-ai-service.azure.com/",
        "apiKey": "api-key"
      }
    }
  }
}
{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "indexedOneLake",
  "description": "Description of the OneLake knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "indexedOneLakeParameters": {
    "fabricWorkspaceId": "ResourceId=fakeWorkspaceId",
    "lakehouseId": "fakeLakehouseId",
    "targetPath": "testfolder",
    "ingestionParameters": {
      "disableImageVerbalization": false,
      "ingestionPermissionOptions": [
        "userIds",
        "groupIds",
        "rbacScope"
      ],
      "contentExtractionMode": "standard",
      "identity": {
        "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
        "userAssignedIdentity": "/my/userassigned/id"
      },
      "embeddingModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "model",
          "apiKey": "api-key",
          "modelName": "text-embedding-3-large"
        }
      },
      "chatCompletionModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "myDeployment",
          "apiKey": "api-key",
          "modelName": "gpt-4o-mini"
        }
      },
      "ingestionSchedule": {
        "interval": "P1D",
        "startTime": "2024-06-06T00:01:50.265Z"
      },
      "aiServices": {
        "uri": "https://my-ai-service.azure.com/",
        "apiKey": "api-key"
      }
    }
  }
}

SearchServiceCreateOrUpdateKnowledgeSourceIndexedSharePoint

Sample request

PUT https://previewexampleservice.search.windows.net/knowledgesources('ks-preview-test')?api-version=2026-05-01-preview





{
  "indexedSharePointParameters": {
    "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net ",
    "containerName": "defaultSiteLibrary",
    "query": "*.docx OR *.pdf",
    "ingestionParameters": {
      "identity": {
        "userAssignedIdentity": "/my/userassigned/id",
        "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity"
      },
      "embeddingModel": {
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "model",
          "apiKey": "api-key",
          "modelName": "text-embedding-3-large"
        },
        "kind": "azureOpenAI"
      },
      "chatCompletionModel": {
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "myDeployment",
          "apiKey": "api-key",
          "modelName": "gpt-4o-mini"
        },
        "kind": "azureOpenAI"
      },
      "disableImageVerbalization": false,
      "ingestionSchedule": {
        "interval": "P1D",
        "startTime": "2025-01-07T19:30:00Z"
      },
      "ingestionPermissionOptions": [
        "userIds",
        "groupIds",
        "rbacScope"
      ],
      "contentExtractionMode": "standard",
      "aiServices": {
        "uri": "https://my-ai-service.azure.com/",
        "apiKey": "api-key"
      }
    }
  },
  "name": "ks-preview-test",
  "description": "Description of the SharePoint knowledge source.",
  "kind": "indexedSharePoint",
  "@odata.etag": "0x1234568AE7E58A1",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  }
}

Sample response

{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "indexedSharePoint",
  "description": "Description of the SharePoint knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "indexedSharePointParameters": {
    "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net ",
    "containerName": "defaultSiteLibrary",
    "query": "*.docx OR *.pdf",
    "ingestionParameters": {
      "disableImageVerbalization": false,
      "ingestionPermissionOptions": [
        "userIds",
        "groupIds",
        "rbacScope"
      ],
      "contentExtractionMode": "standard",
      "identity": {
        "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
        "userAssignedIdentity": "/my/userassigned/id"
      },
      "embeddingModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "model",
          "apiKey": "api-key",
          "modelName": "text-embedding-3-large"
        }
      },
      "chatCompletionModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "myDeployment",
          "apiKey": "api-key",
          "modelName": "gpt-4o-mini"
        }
      },
      "ingestionSchedule": {
        "interval": "P1D",
        "startTime": "2024-06-06T00:01:50.265Z"
      },
      "aiServices": {
        "uri": "https://my-ai-service.azure.com/",
        "apiKey": "api-key"
      }
    }
  }
}
{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "indexedSharePoint",
  "description": "Description of the SharePoint knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "indexedSharePointParameters": {
    "connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net ",
    "containerName": "defaultSiteLibrary",
    "query": "*.docx OR *.pdf",
    "ingestionParameters": {
      "disableImageVerbalization": false,
      "ingestionPermissionOptions": [
        "userIds",
        "groupIds",
        "rbacScope"
      ],
      "contentExtractionMode": "standard",
      "identity": {
        "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
        "userAssignedIdentity": "/my/userassigned/id"
      },
      "embeddingModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "model",
          "apiKey": "api-key",
          "modelName": "text-embedding-3-large"
        }
      },
      "chatCompletionModel": {
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
          "resourceUri": "https://test-sample.openai.azure.com/",
          "deploymentId": "myDeployment",
          "apiKey": "api-key",
          "modelName": "gpt-4o-mini"
        }
      },
      "ingestionSchedule": {
        "interval": "P1D",
        "startTime": "2024-06-06T00:01:50.265Z"
      },
      "aiServices": {
        "uri": "https://my-ai-service.azure.com/",
        "apiKey": "api-key"
      }
    }
  }
}

SearchServiceCreateOrUpdateKnowledgeSourceMcpServer

Sample request

PUT https://previewexampleservice.search.windows.net/knowledgesources('ks-preview-test')?api-version=2026-05-01-preview





{
  "mcpServerParameters": {
    "serverURL": "https://mcp.contoso.com/sse",
    "authentication": {
      "foundryConnectionParameters": {
        "connectionId": "conn-123"
      },
      "kind": "foundryConnection"
    },
    "tools": [
      {
        "name": "search-code",
        "outputParsing": {
          "jsonParameters": {
            "documentsPath": "$.documents[*]",
            "includeContext": true
          },
          "kind": "json"
        },
        "inclusionMode": "reranked",
        "maxOutputTokens": 4096
      }
    ]
  },
  "name": "ks-preview-test",
  "description": "Description of the MCP server knowledge source.",
  "kind": "mcpServer",
  "@odata.etag": "0x1234568AE7E58A1",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  }
}

Sample response

{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "mcpServer",
  "description": "Description of the MCP server knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "isServiceLevelKey": false,
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "mcpServerParameters": {
    "serverURL": "https://mcp.contoso.com/sse",
    "authentication": {
      "kind": "foundryConnection",
      "foundryConnectionParameters": {
        "connectionId": "conn-123"
      }
    },
    "tools": [
      {
        "name": "search-code",
        "inclusionMode": "reranked",
        "maxOutputTokens": 4096,
        "outputParsing": {
          "kind": "json",
          "jsonParameters": {
            "documentsPath": "$.documents[*]",
            "includeContext": true
          }
        }
      }
    ]
  }
}
{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "mcpServer",
  "description": "Description of the MCP server knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "isServiceLevelKey": false,
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "mcpServerParameters": {
    "serverURL": "https://mcp.contoso.com/sse",
    "authentication": {
      "kind": "foundryConnection",
      "foundryConnectionParameters": {
        "connectionId": "conn-123"
      }
    },
    "tools": [
      {
        "name": "search-code",
        "inclusionMode": "reranked",
        "maxOutputTokens": 4096,
        "outputParsing": {
          "kind": "json",
          "jsonParameters": {
            "documentsPath": "$.documents[*]",
            "includeContext": true
          }
        }
      }
    ]
  }
}

SearchServiceCreateOrUpdateKnowledgeSourceWeb

Sample request

PUT https://previewexampleservice.search.windows.net/knowledgesources('ks-preview-test')?api-version=2026-05-01-preview





{
  "webParameters": {
    "domains": {
      "allowedDomains": [
        {
          "address": "example.com",
          "includeSubpages": true
        },
        {
          "address": "another-example.com"
        }
      ],
      "blockedDomains": [
        {
          "address": "blocked.com"
        },
        {
          "address": "spam.com",
          "includeSubpages": true
        }
      ]
    }
  },
  "name": "ks-preview-test",
  "description": "Description of the knowledge source.",
  "kind": "web",
  "@odata.etag": "0x1234568AE7E58A1",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  }
}

Sample response

{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "web",
  "description": "Description of the knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "webParameters": {
    "domains": {
      "allowedDomains": [
        {
          "address": "example.com",
          "includeSubpages": true
        },
        {
          "address": "another-example.com"
        }
      ],
      "blockedDomains": [
        {
          "address": "blocked.com"
        },
        {
          "address": "spam.com",
          "includeSubpages": true
        }
      ]
    }
  }
}
{
  "@odata.etag": "0x1234568AE7E58A1",
  "name": "ks-preview-test",
  "kind": "web",
  "description": "Description of the knowledge source.",
  "encryptionKey": {
    "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
    "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
    "keyVaultUri": "https://myKeyVault.vault.azure.net",
    "accessCredentials": {
      "applicationId": "00000000-0000-0000-0000-000000000000",
      "applicationSecret": "<applicationSecret>"
    }
  },
  "webParameters": {
    "domains": {
      "allowedDomains": [
        {
          "address": "example.com",
          "includeSubpages": true
        },
        {
          "address": "another-example.com"
        }
      ],
      "blockedDomains": [
        {
          "address": "blocked.com"
        },
        {
          "address": "spam.com",
          "includeSubpages": true
        }
      ]
    }
  }
}

Definitions

Name Description
Accept

The Accept header.

AIServices

Parameters for AI Services.

AssetStore

Configuration for an asset store used to store extracted assets such as images.

AzureBlobKnowledgeSource

Configuration for Azure Blob Storage knowledge source.

AzureBlobKnowledgeSourceParameters

Parameters for Azure Blob Storage knowledge source.

AzureOpenAIModelName

The Azure Open AI model name that will be called.

AzureOpenAIVectorizerParameters

Specifies the parameters for connecting to the Azure OpenAI resource.

ContentColumnMapping

Maps a SQL column to a search index field.

EmbeddingColumnMapping

Maps a SQL column to a vector field for embedding.

ErrorAdditionalInfo

The resource management error additional info.

ErrorDetail

The error detail.

ErrorResponse

Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.).

FabricDataAgentKnowledgeSource

Configuration for Fabric Data Agent knowledge source.

FabricDataAgentKnowledgeSourceParameters

Parameters for Fabric Data Agent knowledge source.

FabricOntologyKnowledgeSource

Configuration for Fabric Ontology knowledge source.

FabricOntologyKnowledgeSourceParameters

Parameters for Fabric Ontology knowledge source.

FileKnowledgeSource

Configuration for File knowledge source that supports direct file upload and indexing.

FileKnowledgeSourceParameters

Parameters for File knowledge source.

FreshnessPolicy

Configuration for freshness-aware retrieval. When set, newer documents receive a ranking boost during retrieval.

IndexedOneLakeKnowledgeSource

Configuration for OneLake knowledge source.

IndexedOneLakeKnowledgeSourceParameters

Parameters for OneLake knowledge source.

IndexedSharePointContainerName

Specifies which SharePoint libraries to access.

IndexedSharePointKnowledgeSource

Configuration for SharePoint knowledge source.

IndexedSharePointKnowledgeSourceParameters

Parameters for SharePoint knowledge source.

IndexedSqlKnowledgeSource

Configuration for indexed SQL knowledge source.

IndexedSqlKnowledgeSourceParameters

Parameters for indexed SQL knowledge source.

IndexingSchedule

Represents a schedule for indexer execution.

KnowledgeBaseAzureOpenAIModel

Specifies the Azure OpenAI resource used to do query planning.

KnowledgeBaseModelKind

The AI model to be used for query planning.

KnowledgeSourceAzureOpenAIVectorizer

Specifies the Azure OpenAI resource used to vectorize a query string.

KnowledgeSourceIngestionParameters

Consolidates all general ingestion settings for knowledge sources.

KnowledgeSourceIngestionPermissionOption

Permission types to ingest together with document content.

KnowledgeSourceKind

The kind of the knowledge source.

McpServerAuthenticationKind

The kind of authentication for an MCP server.

McpServerAutoOutputParsing

Automatically detect the output format and parse accordingly.

McpServerFoundryConnectionAuthentication

Authentication using an Azure AI Foundry connection.

McpServerFoundryConnectionParameters

Parameters for Foundry connection authentication.

McpServerJsonOutputParsing

Parse the output as a JSON document using the configured JSON parameters.

McpServerKnowledgeSource

Configuration for a knowledge source backed by an MCP (Model Context Protocol) server.

McpServerKnowledgeSourceParameters

Parameters for an MCP server knowledge source.

McpServerNoneOutputParsing

Treat the output as a single block without any parsing.

McpServerOutputParsingJsonParameters

Parameters for JSON output parsing.

McpServerOutputParsingKind

The kind of output parsing for an MCP server tool.

McpServerOutputParsingSplitParameters

Parameters for split output parsing.

McpServerSplitOutputParsing

Split the output into pages using the configured split parameters.

McpServerStoredHeadersAuthentication

Authentication using stored HTTP headers.

McpServerStoredHeadersParameters

Parameters for stored headers authentication.

McpServerTool

Represents a single tool within an MCP server knowledge source.

McpServerToolInclusionMode

Controls how parsed MCP tool results are integrated into the final result set.

Prefer

For HTTP PUT requests, instructs the service to return the created/updated resource on success.

RemoteSharePointKnowledgeSource

Configuration for remote SharePoint knowledge source.

RemoteSharePointKnowledgeSourceParameters

Parameters for remote SharePoint knowledge source.

SearchIndexerDataNoneIdentity

Clears the identity property of a datasource.

SearchIndexerDataUserAssignedIdentity

Specifies the identity for a datasource to use.

SearchIndexFieldReference

Field reference for a search index.

SearchIndexKnowledgeSource

Knowledge Source targeting a search index.

SearchIndexKnowledgeSourceParameters

Parameters for search index knowledge source.

SearchResourceEncryptionKey

A customer-managed encryption key in Azure Key Vault. Keys that you create and manage can be used to encrypt or decrypt data-at-rest, such as indexes and synonym maps.

SplitSkillLanguage

The language codes supported for input text by SplitSkill.

TextSplitMode

A value indicating which split mode to perform.

VectorSearchVectorizerKind

The vectorization method to be used during query time.

WebKnowledgeSource

Knowledge Source targeting web results.

WebKnowledgeSourceDomain

Configuration for web knowledge source domain.

WebKnowledgeSourceDomains

Domain allow/block configuration for web knowledge source.

WebKnowledgeSourceParameters

Parameters for web knowledge source.

WorkIQKnowledgeSource

Configuration for WorkIQ knowledge source.

Accept

The Accept header.

Value Description
application/json;odata.metadata=minimal

AIServices

Parameters for AI Services.

Name Type Description
apiKey

string

The API key for accessing AI Services.

uri

string (uri)

The URI of the AI Services endpoint.

AssetStore

Configuration for an asset store used to store extracted assets such as images.

Name Type Description
connectionString

string

The connection string for the asset store.

containerName

string

The name of the blob container within the asset store where extracted assets (for example, images) are stored.

AzureBlobKnowledgeSource

Configuration for Azure Blob Storage knowledge source.

Name Type Description
@odata.etag

string

The ETag of the knowledge source.

azureBlobParameters

AzureBlobKnowledgeSourceParameters

The type of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

kind string:

azureBlob

The type of the knowledge source.

name

string

The name of the knowledge source.

AzureBlobKnowledgeSourceParameters

Parameters for Azure Blob Storage knowledge source.

Name Type Default value Description
connectionString

string

Key-based connection string or the ResourceId format if using a managed identity.

containerName

string

The name of the blob storage container.

createdResources

object

Resources created by the knowledge source.

folderPath

string

Optional folder path within the container.

ingestionParameters

KnowledgeSourceIngestionParameters

Consolidates all general ingestion settings.

isADLSGen2

boolean

False

Set to true if connecting to an ADLS Gen2 storage account. Default is false.

AzureOpenAIModelName

The Azure Open AI model name that will be called.

Value Description
text-embedding-ada-002

TextEmbeddingAda002 model.

text-embedding-3-large

TextEmbedding3Large model.

text-embedding-3-small

TextEmbedding3Small model.

gpt-4o

Gpt4o model.

gpt-4o-mini

Gpt4oMini model.

gpt-4.1

Gpt41 model.

gpt-4.1-mini

Gpt41Mini model.

gpt-4.1-nano

Gpt41Nano model.

gpt-5

Gpt5 model.

gpt-5-mini

Gpt5Mini model.

gpt-5-nano

Gpt5Nano model.

gpt-5.1

Gpt51 model.

gpt-5.2

Gpt52 model.

gpt-5.4

Gpt54 model.

gpt-5.4-mini

Gpt54Mini model.

gpt-5.4-nano

Gpt54Nano model.

AzureOpenAIVectorizerParameters

Specifies the parameters for connecting to the Azure OpenAI resource.

Name Type Description
apiKey

string

API key of the designated Azure OpenAI resource.

authIdentity SearchIndexerDataIdentity:

The user-assigned managed identity used for outbound connections.

deploymentId

string

ID of the Azure OpenAI model deployment on the designated resource.

modelName

AzureOpenAIModelName

The name of the embedding model that is deployed at the provided deploymentId path.

resourceUri

string (uri)

The resource URI of the Azure OpenAI resource.

ContentColumnMapping

Maps a SQL column to a search index field.

Name Type Description
name

string

Target index field name.

searchFieldType

string

Azure AI Search field type (e.g., Edm.String, Edm.Int32).

sourceField

string

SQL column name.

EmbeddingColumnMapping

Maps a SQL column to a vector field for embedding.

Name Type Description
name

string

Target vector field name in the search index.

sourceField

string

SQL column used as input for embedding generation.

ErrorAdditionalInfo

The resource management error additional info.

Name Type Description
info

searchservice.knowledgesources.createorupdate

The additional info.

type

string

The additional info type.

ErrorDetail

The error detail.

Name Type Description
additionalInfo

ErrorAdditionalInfo[]

The error additional info.

code

string

The error code.

details

ErrorDetail[]

The error details.

message

string

The error message.

target

string

The error target.

ErrorResponse

Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.).

Name Type Description
error

ErrorDetail

The error object.

FabricDataAgentKnowledgeSource

Configuration for Fabric Data Agent knowledge source.

Name Type Description
@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

fabricDataAgentParameters

FabricDataAgentKnowledgeSourceParameters

The parameters for the Fabric Data Agent knowledge source.

kind string:

fabricDataAgent

The type of the knowledge source.

name

string

The name of the knowledge source.

FabricDataAgentKnowledgeSourceParameters

Parameters for Fabric Data Agent knowledge source.

Name Type Description
dataAgentId

string

Specifies which Fabric Data Agent to access.

workspaceId

string

Fabric workspace ID.

FabricOntologyKnowledgeSource

Configuration for Fabric Ontology knowledge source.

Name Type Description
@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

fabricOntologyParameters

FabricOntologyKnowledgeSourceParameters

The parameters for the Fabric Ontology knowledge source.

kind string:

fabricOntology

The type of the knowledge source.

name

string

The name of the knowledge source.

FabricOntologyKnowledgeSourceParameters

Parameters for Fabric Ontology knowledge source.

Name Type Description
ontologyId

string

The ID of the ontology to use from the Fabric workspace.

workspaceId

string

The Fabric workspace ID containing the ontology.

FileKnowledgeSource

Configuration for File knowledge source that supports direct file upload and indexing.

Name Type Description
@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

fileParameters

FileKnowledgeSourceParameters

The parameters for the File knowledge source.

kind string:

file

The type of the knowledge source.

name

string

The name of the knowledge source.

FileKnowledgeSourceParameters

Parameters for File knowledge source.

Name Type Description
createdResources

object

Resources created by the file knowledge source.

ingestionParameters

KnowledgeSourceIngestionParameters

Consolidates all general ingestion settings. Only 'minimal' content extraction mode and embeddingModel are supported for file knowledge sources.

FreshnessPolicy

Configuration for freshness-aware retrieval. When set, newer documents receive a ranking boost during retrieval.

Name Type Description
boostingDuration

string

ISO 8601 duration for the freshness boosting window (e.g. 'P90D' for 90 days). Documents newer than this duration receive a ranking boost during retrieval.

IndexedOneLakeKnowledgeSource

Configuration for OneLake knowledge source.

Name Type Description
@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

indexedOneLakeParameters

IndexedOneLakeKnowledgeSourceParameters

The parameters for the knowledge source.

kind string:

indexedOneLake

The type of the knowledge source.

name

string

The name of the knowledge source.

IndexedOneLakeKnowledgeSourceParameters

Parameters for OneLake knowledge source.

Name Type Description
createdResources

object

Resources created by the knowledge source.

fabricWorkspaceId

string

OneLake workspace ID.

ingestionParameters

KnowledgeSourceIngestionParameters

Consolidates all general ingestion settings.

lakehouseId

string

Specifies which OneLake lakehouse to access.

targetPath

string

Optional OneLakehouse folder or shortcut to filter OneLake content.

IndexedSharePointContainerName

Specifies which SharePoint libraries to access.

Value Description
defaultSiteLibrary

Index content from the site's default document library.

allSiteLibraries

Index content from every document library in the site.

useQuery

Use a query to filter SharePoint content.

IndexedSharePointKnowledgeSource

Configuration for SharePoint knowledge source.

Name Type Description
@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

indexedSharePointParameters

IndexedSharePointKnowledgeSourceParameters

The parameters for the knowledge source.

kind string:

indexedSharePoint

The type of the knowledge source.

name

string

The name of the knowledge source.

IndexedSharePointKnowledgeSourceParameters

Parameters for SharePoint knowledge source.

Name Type Description
connectionString

string

SharePoint connection string with format: SharePointOnlineEndpoint=[SharePoint site url];ApplicationId=[Azure AD App ID];ApplicationSecret=[Azure AD App client secret];TenantId=[SharePoint site tenant id]

containerName

IndexedSharePointContainerName

Specifies which SharePoint libraries to access.

createdResources

object

Resources created by the knowledge source.

ingestionParameters

KnowledgeSourceIngestionParameters

Consolidates all general ingestion settings.

query

string

Optional query to filter SharePoint content.

IndexedSqlKnowledgeSource

Configuration for indexed SQL knowledge source.

Name Type Description
@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

indexedSqlParameters

IndexedSqlKnowledgeSourceParameters

The parameters for the SQL knowledge source.

kind string:

indexedSql

The type of the knowledge source.

name

string

The name of the knowledge source.

IndexedSqlKnowledgeSourceParameters

Parameters for indexed SQL knowledge source.

Name Type Description
connectionString

string

The connection string for the Azure SQL Database or SQL Managed Instance.

contentColumns

ContentColumnMapping[]

Optional column mappings for content fields. If omitted, all columns are auto-discovered.

createdResources

object

Resources created by the knowledge source.

embeddingColumns

EmbeddingColumnMapping[]

Optional column mappings for embedding vector fields. If omitted, no vector fields are created.

highWaterMarkColumnName

string

Optional column name for high water mark change detection. If provided, uses HighWaterMarkChangeDetectionPolicy.

ingestionParameters

KnowledgeSourceIngestionParameters

Consolidates all general ingestion settings including embedding model, schedule, and identity.

tableOrView

string

The name of the table or view to index. Can be schema-qualified (e.g., 'dbo.MyTable').

IndexingSchedule

Represents a schedule for indexer execution.

Name Type Description
interval

string (duration)

The interval of time between indexer executions.

startTime

string (date-time)

The time when an indexer should start running.

KnowledgeBaseAzureOpenAIModel

Specifies the Azure OpenAI resource used to do query planning.

Name Type Description
azureOpenAIParameters

AzureOpenAIVectorizerParameters

Azure OpenAI parameters.

kind string:

azureOpenAI

The AI model to be used for query planning.

KnowledgeBaseModelKind

The AI model to be used for query planning.

Value Description
azureOpenAI

Use Azure Open AI models for query planning.

KnowledgeSourceAzureOpenAIVectorizer

Specifies the Azure OpenAI resource used to vectorize a query string.

Name Type Description
azureOpenAIParameters

AzureOpenAIVectorizerParameters

Contains the parameters specific to Azure OpenAI embedding vectorization.

kind string:

azureOpenAI

The name of the kind of vectorization method being configured for use with vector search.

KnowledgeSourceIngestionParameters

Consolidates all general ingestion settings for knowledge sources.

Name Type Default value Description
aiServices

AIServices

Optional AI Services configuration for content processing.

assetStore

AssetStore

Optional asset store configuration for storing extracted assets such as images.

chatCompletionModel KnowledgeBaseModel:

KnowledgeBaseAzureOpenAIModel

Optional chat completion model for image verbalization or context extraction.

contentExtractionMode enum:
  • minimal
  • standard
minimal

Optional content extraction mode. Default is 'minimal'.

disableImageVerbalization

boolean

False

Indicates whether image verbalization should be disabled. Default is false.

embeddingModel KnowledgeSourceVectorizer:

KnowledgeSourceAzureOpenAIVectorizer

Optional vectorizer configuration for vectorizing content.

freshnessPolicy

FreshnessPolicy

Optional freshness policy for biasing retrieval toward newer documents.

identity SearchIndexerDataIdentity:

An explicit identity to use for this knowledge source.

ingestionPermissionOptions

KnowledgeSourceIngestionPermissionOption[]

Optional list of permission types to ingest together with document content. If specified, it will set the indexer permission options for the data source.

ingestionSchedule

IndexingSchedule

Optional schedule for data ingestion.

KnowledgeSourceIngestionPermissionOption

Permission types to ingest together with document content.

Value Description
userIds

Ingest explicit user identifiers alongside document content.

groupIds

Ingest group identifiers alongside document content.

rbacScope

Ingest RBAC scope information alongside document content.

sensitivityLabels

Ingest Microsoft Purview sensitivity labels alongside document content.

KnowledgeSourceKind

The kind of the knowledge source.

Value Description
searchIndex

A knowledge source that reads data from a Search Index.

azureBlob

A knowledge source that read and ingest data from Azure Blob Storage to a Search Index.

indexedSharePoint

A knowledge source that reads data from indexed SharePoint.

indexedOneLake

A knowledge source that reads data from indexed OneLake.

indexedSql

A knowledge source that retrieves and ingests data from Azure SQL Database or SQL Managed Instance to a Search Index.

web

A knowledge source that reads data from the web.

remoteSharePoint

A knowledge source that reads data from remote SharePoint.

workIQ

A knowledge source that reads data from work IQ

file

A knowledge source that supports direct file upload and indexing.

mcpServer

A knowledge source backed by an MCP (Model Context Protocol) server.

fabricDataAgent

A knowledge source that retrieves data from a Fabric Data Agent.

fabricOntology

A knowledge source that retrieves data from Microsoft Fabric Ontology ontologies.

McpServerAuthenticationKind

The kind of authentication for an MCP server.

Value Description
foundryConnection

Authenticate using an Azure AI Foundry connection.

storedHeaders

Authenticate using stored HTTP headers.

McpServerAutoOutputParsing

Automatically detect the output format and parse accordingly.

Name Type Description
kind string:

auto

The kind of output parsing to apply.

McpServerFoundryConnectionAuthentication

Authentication using an Azure AI Foundry connection.

Name Type Description
foundryConnectionParameters

McpServerFoundryConnectionParameters

Parameters for Foundry connection authentication.

kind string:

foundryConnection

The kind of authentication to use.

McpServerFoundryConnectionParameters

Parameters for Foundry connection authentication.

Name Type Description
connectionId

string

The Azure AI Foundry connection identifier.

McpServerJsonOutputParsing

Parse the output as a JSON document using the configured JSON parameters.

Name Type Description
jsonParameters

McpServerOutputParsingJsonParameters

Parameters for JSON output parsing. Required when kind is 'json'.

kind string:

json

The kind of output parsing to apply.

McpServerKnowledgeSource

Configuration for a knowledge source backed by an MCP (Model Context Protocol) server.

Name Type Description
@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

kind string:

mcpServer

The type of the knowledge source.

mcpServerParameters

McpServerKnowledgeSourceParameters

The parameters for the MCP server knowledge source.

name

string

The name of the knowledge source.

McpServerKnowledgeSourceParameters

Parameters for an MCP server knowledge source.

Name Type Description
authentication McpServerAuthentication:

The authentication configuration for the MCP server.

serverURL

string

The URL of the MCP server endpoint.

tools

McpServerTool[]

The list of tools to invoke on the MCP server.

McpServerNoneOutputParsing

Treat the output as a single block without any parsing.

Name Type Description
kind string:

none

The kind of output parsing to apply.

McpServerOutputParsingJsonParameters

Parameters for JSON output parsing.

Name Type Description
documentsPath

string

The JSON path to the array of documents in the tool output.

includeContext

boolean

Whether to include surrounding context from the JSON output alongside extracted documents.

McpServerOutputParsingKind

The kind of output parsing for an MCP server tool.

Value Description
auto

Automatically detect the output format and parse accordingly.

json

Parse the output as a JSON document using the configured JSON parameters.

split

Split the output into pages using the configured split parameters.

none

Treat the output as a single block without any parsing.

McpServerOutputParsingSplitParameters

Parameters for split output parsing.

Name Type Description
defaultLanguageCode

SplitSkillLanguage

A value indicating which language code to use. Default is en.

maximumPageLength

integer (int32)

The maximum number of characters per page.

maximumPagesToTake

integer (int32)

The maximum number of pages to take from the output.

pageOverlapLength

integer (int32)

The number of characters to overlap between pages.

textSplitMode

TextSplitMode

The text split mode to use.

McpServerSplitOutputParsing

Split the output into pages using the configured split parameters.

Name Type Description
kind string:

split

The kind of output parsing to apply.

splitParameters

McpServerOutputParsingSplitParameters

Parameters for split output parsing.

McpServerStoredHeadersAuthentication

Authentication using stored HTTP headers.

Name Type Description
kind string:

storedHeaders

The kind of authentication to use.

storedHeadersParameters

McpServerStoredHeadersParameters

Parameters for stored headers authentication.

McpServerStoredHeadersParameters

Parameters for stored headers authentication.

Name Type Description
headers

object

The stored HTTP headers to include in MCP server requests.

McpServerTool

Represents a single tool within an MCP server knowledge source.

Name Type Description
inclusionMode

McpServerToolInclusionMode

Controls how the parsed results from this tool are integrated into the final result set. Defaults to 'reranked' when not specified.

maxOutputTokens

integer (int32)

Optional post-parsing token cap for this tool's output. Must be greater than 0 when specified.

name

string

The name of the MCP tool to invoke.

outputParsing McpServerOutputParsing:

Optional configuration for parsing the tool's output.

McpServerToolInclusionMode

Controls how parsed MCP tool results are integrated into the final result set.

Value Description
reranked

Tool results go through the reranking and aggregation pipeline alongside results from other knowledge sources. This is the default behavior.

always

Tool results bypass reranking and are always included in the agent context.

Prefer

For HTTP PUT requests, instructs the service to return the created/updated resource on success.

Value Description
return=representation

RemoteSharePointKnowledgeSource

Configuration for remote SharePoint knowledge source.

Name Type Description
@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

kind string:

remoteSharePoint

The type of the knowledge source.

name

string

The name of the knowledge source.

remoteSharePointParameters

RemoteSharePointKnowledgeSourceParameters

The parameters for the remote SharePoint knowledge source.

RemoteSharePointKnowledgeSourceParameters

Parameters for remote SharePoint knowledge source.

Name Type Description
containerTypeId

string

Container ID for SharePoint Embedded connection. When this is null, it will use SharePoint Online.

filterExpression

string

Keyword Query Language (KQL) expression with queryable SharePoint properties and attributes to scope the retrieval before the query runs.

resourceMetadata

string[]

A list of metadata fields to be returned for each item in the response. Only retrievable metadata properties can be included in this list. By default, no metadata is returned.

SearchIndexerDataNoneIdentity

Clears the identity property of a datasource.

Name Type Description
@odata.type string:

#Microsoft.Azure.Search.DataNoneIdentity

A URI fragment specifying the type of identity.

SearchIndexerDataUserAssignedIdentity

Specifies the identity for a datasource to use.

Name Type Description
@odata.type string:

#Microsoft.Azure.Search.DataUserAssignedIdentity

A URI fragment specifying the type of identity.

federatedIdentityClientId

string

Multi-tenant User-Assigned Managed Identity Support: The client id of the multi-tentant App that has been configured to federate with the user-assigned managed identity.

userAssignedIdentity

string

The fully qualified Azure resource Id of a user assigned managed identity typically in the form "/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" that should have been assigned to the search service.

SearchIndexFieldReference

Field reference for a search index.

Name Type Description
name

string

The name of the field.

SearchIndexKnowledgeSource

Knowledge Source targeting a search index.

Name Type Description
@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

kind string:

searchIndex

The type of the knowledge source.

name

string

The name of the knowledge source.

searchIndexParameters

SearchIndexKnowledgeSourceParameters

The parameters for the knowledge source.

SearchIndexKnowledgeSourceParameters

Parameters for search index knowledge source.

Name Type Description
baseFilter

string

A default filter condition applied to the index at retrieval time (e.g., 'State eq VA'). Can be overridden at query time via knowledge source runtime parameters.

searchFields

SearchIndexFieldReference[]

Used to restrict which fields to search on the search index.

searchIndexName

string

The name of the Search index.

semanticConfigurationName

string

Used to specify a different semantic configuration on the target search index other than the default one.

sourceDataFields

SearchIndexFieldReference[]

Used to request additional fields for referenced source data.

SearchResourceEncryptionKey

A customer-managed encryption key in Azure Key Vault. Keys that you create and manage can be used to encrypt or decrypt data-at-rest, such as indexes and synonym maps.

Name Type Default value Description
accessCredentials.applicationId

string

An AAD Application ID that was granted the required access permissions to the Azure Key Vault that is to be used when encrypting your data at rest. The Application ID should not be confused with the Object ID for your AAD Application.

accessCredentials.applicationSecret

string

The authentication key of the specified AAD application.

identity SearchIndexerDataIdentity:

An explicit managed identity to use for this encryption key. If not specified and the access credentials property is null, the system-assigned managed identity is used. On update to the resource, if the explicit identity is unspecified, it remains unchanged. If "none" is specified, the value of this property is cleared.

isServiceLevelKey

boolean

False

An optional value indicating whether this key is a service-level key. Default is false.

keyVaultKeyName

string

The name of your Azure Key Vault key to be used to encrypt your data at rest.

keyVaultKeyVersion

string

The version of your Azure Key Vault key to be used to encrypt your data at rest.

keyVaultUri

string

The URI of your Azure Key Vault, also referred to as DNS name, that contains the key to be used to encrypt your data at rest. An example URI might be https://my-keyvault-name.vault.azure.net.

SplitSkillLanguage

The language codes supported for input text by SplitSkill.

Value Description
am

Amharic

bs

Bosnian

cs

Czech

da

Danish

de

German

en

English

es

Spanish

et

Estonian

fi

Finnish

fr

French

he

Hebrew

hi

Hindi

hr

Croatian

hu

Hungarian

id

Indonesian

is

Icelandic

it

Italian

ja

Japanese

ko

Korean

lv

Latvian

nb

Norwegian

nl

Dutch

pl

Polish

pt

Portuguese (Portugal)

pt-br

Portuguese (Brazil)

ru

Russian

sk

Slovak

sl

Slovenian

sr

Serbian

sv

Swedish

tr

Turkish

ur

Urdu

zh

Chinese (Simplified)

TextSplitMode

A value indicating which split mode to perform.

Value Description
pages

Split the text into individual pages.

sentences

Split the text into individual sentences.

VectorSearchVectorizerKind

The vectorization method to be used during query time.

Value Description
azureOpenAI

Generate embeddings using an Azure OpenAI resource at query time.

customWebApi

Generate embeddings using a custom web endpoint at query time.

aiServicesVision

Generate embeddings for an image or text input at query time using the Azure AI Services Vision Vectorize API.

aml

Generate embeddings using an Azure Machine Learning endpoint deployed via the Azure AI Foundry Model Catalog at query time.

WebKnowledgeSource

Knowledge Source targeting web results.

Name Type Description
@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

kind string:

web

The type of the knowledge source.

name

string

The name of the knowledge source.

webParameters

WebKnowledgeSourceParameters

The parameters for the web knowledge source.

WebKnowledgeSourceDomain

Configuration for web knowledge source domain.

Name Type Description
address

string

The address of the domain.

includeSubpages

boolean

Whether or not to include subpages from this domain.

WebKnowledgeSourceDomains

Domain allow/block configuration for web knowledge source.

Name Type Description
allowedDomains

WebKnowledgeSourceDomain[]

Domains that are allowed for web results.

blockedDomains

WebKnowledgeSourceDomain[]

Domains that are blocked from web results.

WebKnowledgeSourceParameters

Parameters for web knowledge source.

Name Type Description
count

integer (int32)

The default number of web results to return. Can be overridden at query time via knowledge source runtime parameters.

domains

WebKnowledgeSourceDomains

Domain allow/block configuration for web results.

freshness

string

The default freshness filter for web results. Can be overridden at query time via knowledge source runtime parameters.

language

string

The default language for web results. Can be overridden at query time via knowledge source runtime parameters.

market

string

The default market for web results. Can be overridden at query time via knowledge source runtime parameters.

WorkIQKnowledgeSource

Configuration for WorkIQ knowledge source.

Name Type Description
@odata.etag

string

The ETag of the knowledge source.

description

string

Optional user-defined description.

encryptionKey

SearchResourceEncryptionKey

A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your knowledge source definition when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your knowledge source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your knowledge source definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.

kind string:

workIQ

The type of the knowledge source.

name

string

The name of the knowledge source.