Services - Create Or Update

Creates or updates a search service in the given resource group. If the search service already exists, all properties will be updated with the given values.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}?api-version=2023-11-01

URI Parameters

Name In Required Type Description
resourceGroupName
path True

string

The name of the resource group within the current subscription. You can obtain this value from the Azure Resource Manager API or the portal.

searchServiceName
path True

string

The name of the search service to create or update. Search service names must only contain lowercase letters, digits or dashes, cannot use dash as the first two or last one characters, cannot contain consecutive dashes, and must be between 2 and 60 characters in length. Search service names must be globally unique since they are part of the service URI (https://.search.windows.net). You cannot change the service name after the service is created.

subscriptionId
path True

string

The unique identifier for a Microsoft Azure subscription. You can obtain this value from the Azure Resource Manager API, command line tools, or the portal.

api-version
query True

string

The API version to use for each request.

Request Header

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

string

uuid

A client-generated GUID value that identifies this request. If specified, this will be included in response information as a way to track the request.

Request Body

Name Required Type Description
location True

string

The geo-location where the resource lives

identity

Identity

The identity of the resource.

properties.authOptions

DataPlaneAuthOptions

Defines the options for how the data plane API of a search service authenticates requests. This cannot be set if 'disableLocalAuth' is set to true.

properties.disableLocalAuth

boolean

When set to true, calls to the search service will not be permitted to utilize API keys for authentication. This cannot be set to true if 'dataPlaneAuthOptions' are defined.

properties.encryptionWithCmk

EncryptionWithCmk

Specifies any policy regarding encryption of resources (such as indexes) using customer manager keys within a search service.

properties.hostingMode

HostingMode

Applicable only for the standard3 SKU. You can set this property to enable up to 3 high density partitions that allow up to 1000 indexes, which is much higher than the maximum indexes allowed for any other SKU. For the standard3 SKU, the value is either 'default' or 'highDensity'. For all other SKUs, this value must be 'default'.

properties.networkRuleSet

NetworkRuleSet

Network-specific rules that determine how the search service may be reached.

properties.partitionCount

integer

The number of partitions in the search service; if specified, it can be 1, 2, 3, 4, 6, or 12. Values greater than 1 are only valid for standard SKUs. For 'standard3' services with hostingMode set to 'highDensity', the allowed values are between 1 and 3.

properties.publicNetworkAccess

PublicNetworkAccess

This value can be set to 'enabled' to avoid breaking changes on existing customer resources and templates. If set to 'disabled', traffic over public interface is not allowed, and private endpoint connections would be the exclusive access method.

properties.replicaCount

integer

The number of replicas in the search service. If specified, it must be a value between 1 and 12 inclusive for standard SKUs or between 1 and 3 inclusive for basic SKU.

properties.semanticSearch

SearchSemanticSearch

Sets options that control the availability of semantic search. This configuration is only possible for certain search SKUs in certain locations.

sku

Sku

The SKU of the search service, which determines billing rate and capacity limits. This property is required when creating a new search service.

tags

object

Resource tags.

Responses

Name Type Description
200 OK

SearchService

The existing service definition was successfully updated. If you changed the number of replicas or partitions, the scale operation will happen asynchronously. You can periodically get your service definition and monitor progress via the provisioningState property.

201 Created

SearchService

If you requested creation of a free search service, the service is now provisioned and ready to use, subject to DNS propagation delay. For other SKU types, provisioning happens asynchronously. You can periodically get your service definition and monitor progress via the provisioningState property.

Other Status Codes

CloudError

HTTP 400 (Bad Request): The given service name or service definition is invalid; See the error code and message in the response for details. HTTP 404 (Not Found): The subscription or resource group could not be found. HTTP 409 (Conflict): The specified subscription is disabled.

Security

azure_auth

Microsoft Entra ID OAuth2 authorization flow.

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

Scopes

Name Description
user_impersonation impersonate your user account

Examples

SearchCreateOrUpdateService
SearchCreateOrUpdateServiceAuthOptions
SearchCreateOrUpdateServiceDisableLocalAuth
SearchCreateOrUpdateServiceToAllowAccessFromPrivateEndpoints
SearchCreateOrUpdateServiceToAllowAccessFromPublicCustomIPs
SearchCreateOrUpdateServiceWithCmkEnforcement
SearchCreateOrUpdateServiceWithIdentity
SearchCreateOrUpdateWithSemanticSearch

SearchCreateOrUpdateService

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice?api-version=2023-11-01

{
  "location": "westus",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "hostingMode": "default"
  }
}

Sample Response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "enabled",
    "networkRuleSet": {
      "ipRules": []
    },
    "privateEndpointConnections": []
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "enabled",
    "networkRuleSet": {
      "ipRules": []
    },
    "privateEndpointConnections": []
  }
}

SearchCreateOrUpdateServiceAuthOptions

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice?api-version=2023-11-01

{
  "location": "westus",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "hostingMode": "default",
    "authOptions": {
      "aadOrApiKey": {
        "aadAuthFailureMode": "http401WithBearerChallenge"
      }
    }
  }
}

Sample Response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "enabled",
    "networkRuleSet": {
      "ipRules": []
    },
    "authOptions": {
      "aadOrApiKey": {
        "aadAuthFailureMode": "http401WithBearerChallenge"
      }
    }
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "enabled",
    "networkRuleSet": {
      "ipRules": []
    },
    "authOptions": {
      "aadOrApiKey": {
        "aadAuthFailureMode": "http401WithBearerChallenge"
      }
    }
  }
}

SearchCreateOrUpdateServiceDisableLocalAuth

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice?api-version=2023-11-01

{
  "location": "westus",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "hostingMode": "default",
    "disableLocalAuth": true
  }
}

Sample Response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "enabled",
    "networkRuleSet": {
      "ipRules": []
    },
    "disableLocalAuth": true,
    "authOptions": null
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "enabled",
    "networkRuleSet": {
      "ipRules": []
    },
    "disableLocalAuth": true,
    "authOptions": null
  }
}

SearchCreateOrUpdateServiceToAllowAccessFromPrivateEndpoints

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice?api-version=2023-11-01

{
  "location": "westus",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "publicNetworkAccess": "disabled",
    "hostingMode": "default"
  }
}

Sample Response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "disabled",
    "networkRuleSet": {
      "ipRules": []
    },
    "privateEndpointConnections": []
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "disabled",
    "networkRuleSet": {
      "ipRules": []
    },
    "privateEndpointConnections": []
  }
}

SearchCreateOrUpdateServiceToAllowAccessFromPublicCustomIPs

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice?api-version=2023-11-01

{
  "location": "westus",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 1,
    "partitionCount": 1,
    "networkRuleSet": {
      "ipRules": [
        {
          "value": "123.4.5.6"
        },
        {
          "value": "123.4.6.0/18"
        }
      ]
    },
    "hostingMode": "default"
  }
}

Sample Response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 1,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "enabled",
    "networkRuleSet": {
      "ipRules": [
        {
          "value": "123.4.5.6"
        },
        {
          "value": "123.4.6.0/18"
        }
      ]
    },
    "privateEndpointConnections": []
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 1,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "enabled",
    "networkRuleSet": {
      "ipRules": [
        {
          "value": "123.4.5.6"
        },
        {
          "value": "123.4.6.0/18"
        }
      ]
    },
    "privateEndpointConnections": []
  }
}

SearchCreateOrUpdateServiceWithCmkEnforcement

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice?api-version=2023-11-01

{
  "location": "westus",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "hostingMode": "default",
    "encryptionWithCmk": {
      "enforcement": "Enabled"
    }
  }
}

Sample Response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "enabled",
    "networkRuleSet": {
      "ipRules": []
    },
    "privateEndpointConnections": [],
    "sharedPrivateLinkResources": [],
    "encryptionWithCmk": {
      "enforcement": "Enabled",
      "encryptionComplianceStatus": "Compliant"
    },
    "disableLocalAuth": false,
    "authOptions": {
      "apiKeyOnly": {}
    }
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "enabled",
    "networkRuleSet": {
      "ipRules": []
    },
    "privateEndpointConnections": [],
    "sharedPrivateLinkResources": [],
    "encryptionWithCmk": {
      "enforcement": "Enabled",
      "encryptionComplianceStatus": "Compliant"
    },
    "disableLocalAuth": false,
    "authOptions": {
      "apiKeyOnly": {}
    }
  }
}

SearchCreateOrUpdateServiceWithIdentity

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice?api-version=2023-11-01

{
  "location": "westus",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "hostingMode": "default"
  },
  "identity": {
    "type": "SystemAssigned"
  }
}

Sample Response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "enabled",
    "networkRuleSet": {
      "ipRules": []
    },
    "privateEndpointConnections": []
  },
  "identity": {
    "type": "SystemAssigned",
    "principalId": "9d1e1f18-2122-4988-a11c-878782e40a5c",
    "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd"
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "enabled",
    "networkRuleSet": {
      "ipRules": []
    },
    "privateEndpointConnections": []
  },
  "identity": {
    "type": "SystemAssigned",
    "principalId": "9d1e1f18-2122-4988-a11c-878782e40a5c",
    "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd"
  }
}

SearchCreateOrUpdateWithSemanticSearch

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice?api-version=2023-11-01

{
  "location": "westus",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "hostingMode": "default",
    "semanticSearch": "free"
  }
}

Sample Response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "enabled",
    "networkRuleSet": {
      "ipRules": []
    },
    "privateEndpointConnections": [],
    "sharedPrivateLinkResources": [],
    "encryptionWithCmk": {
      "enforcement": "Unspecified",
      "encryptionComplianceStatus": "Compliant"
    },
    "disableLocalAuth": false,
    "authOptions": {
      "apiKeyOnly": {}
    },
    "semanticSearch": "free"
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice",
  "name": "mysearchservice",
  "location": "westus",
  "type": "Microsoft.Search/searchServices",
  "tags": {
    "app-name": "My e-commerce app"
  },
  "sku": {
    "name": "standard"
  },
  "properties": {
    "replicaCount": 3,
    "partitionCount": 1,
    "status": "provisioning",
    "statusDetails": "",
    "hostingMode": "default",
    "provisioningState": "provisioning",
    "publicNetworkAccess": "enabled",
    "networkRuleSet": {
      "ipRules": []
    },
    "privateEndpointConnections": [],
    "sharedPrivateLinkResources": [],
    "encryptionWithCmk": {
      "enforcement": "Unspecified",
      "encryptionComplianceStatus": "Compliant"
    },
    "disableLocalAuth": false,
    "authOptions": {
      "apiKeyOnly": {}
    },
    "semanticSearch": "free"
  }
}

Definitions

Name Description
AadAuthFailureMode

Describes what response the data plane API of a search service would send for requests that failed authentication.

ApiKeyOnly

Indicates that only the API key can be used for authentication.

CloudError

Contains information about an API error.

CloudErrorBody

Describes a particular API error with an error code and a message.

DataPlaneAadOrApiKeyAuthOption

Indicates that either the API key or an access token from a Microsoft Entra ID tenant can be used for authentication.

DataPlaneAuthOptions

Defines the options for how the search service authenticates a data plane request. This cannot be set if 'disableLocalAuth' is set to true.

EncryptionWithCmk

Describes a policy that determines how resources within the search service are to be encrypted with customer=managed keys.

HostingMode

Applicable only for the standard3 SKU. You can set this property to enable up to 3 high density partitions that allow up to 1000 indexes, which is much higher than the maximum indexes allowed for any other SKU. For the standard3 SKU, the value is either 'default' or 'highDensity'. For all other SKUs, this value must be 'default'.

Identity

Identity for the resource.

IdentityType

The identity type.

IpRule

The IP restriction rule of the search service.

NetworkRuleSet

Network-specific rules that determine how the search service can be reached.

PrivateEndpoint

The private endpoint resource from Microsoft.Network provider.

PrivateEndpointConnection

Describes an existing private endpoint connection to the search service.

PrivateEndpointConnectionProperties

Describes the properties of an existing Private Endpoint connection to the search service.

PrivateLinkServiceConnectionProvisioningState

The provisioning state of the private link service connection. Valid values are Updating, Deleting, Failed, Succeeded, or Incomplete

PrivateLinkServiceConnectionState

Describes the current state of an existing Private Link Service connection to the Azure Private Endpoint.

PrivateLinkServiceConnectionStatus

Status of the the private link service connection. Valid values are Pending, Approved, Rejected, or Disconnected.

ProvisioningState

The state of the last provisioning operation performed on the search service. Provisioning is an intermediate state that occurs while service capacity is being established. After capacity is set up, provisioningState changes to either 'succeeded' or 'failed'. Client applications can poll provisioning status (the recommended polling interval is from 30 seconds to one minute) by using the Get Search Service operation to see when an operation is completed. If you are using the free service, this value tends to come back as 'succeeded' directly in the call to Create search service. This is because the free service uses capacity that is already set up.

PublicNetworkAccess

This value can be set to 'enabled' to avoid breaking changes on existing customer resources and templates. If set to 'disabled', traffic over public interface is not allowed, and private endpoint connections would be the exclusive access method.

SearchEncryptionComplianceStatus

Describes whether the search service is compliant or not with respect to having non-customer-encrypted resources. If a service has more than one non-customer-encrypted resource and 'Enforcement' is 'enabled' then the service will be marked as 'nonCompliant'.

SearchEncryptionWithCmk

Describes how a search service should enforce having one or more non-customer-encrypted resources.

SearchSemanticSearch

Sets options that control the availability of semantic search. This configuration is only possible for certain search SKUs in certain locations.

SearchService

Describes a search service and its current state.

SearchServiceStatus

The status of the search service. Possible values include: 'running': The search service is running and no provisioning operations are underway. 'provisioning': The search service is being provisioned or scaled up or down. 'deleting': The search service is being deleted. 'degraded': The search service is degraded. This can occur when the underlying search units are not healthy. The search service is most likely operational, but performance might be slow and some requests might be dropped. 'disabled': The search service is disabled. In this state, the service will reject all API requests. 'error': The search service is in an error state. If your service is in the degraded, disabled, or error states, Microsoft is actively investigating the underlying issue. Dedicated services in these states are still chargeable based on the number of search units provisioned.

SharedPrivateLinkResource

Describes a Shared Private Link Resource managed by the search service.

SharedPrivateLinkResourceProperties

Describes the properties of an existing Shared Private Link Resource managed by the search service.

SharedPrivateLinkResourceProvisioningState

The provisioning state of the shared private link resource. Valid values are Updating, Deleting, Failed, Succeeded or Incomplete.

SharedPrivateLinkResourceStatus

Status of the shared private link resource. Valid values are Pending, Approved, Rejected or Disconnected.

Sku

Defines the SKU of a search service, which determines billing rate and capacity limits.

SkuName

The SKU of the search service. Valid values include: 'free': Shared service. 'basic': Dedicated service with up to 3 replicas. 'standard': Dedicated service with up to 12 partitions and 12 replicas. 'standard2': Similar to standard, but with more capacity per search unit. 'standard3': The largest Standard offering with up to 12 partitions and 12 replicas (or up to 3 partitions with more indexes if you also set the hostingMode property to 'highDensity'). 'storage_optimized_l1': Supports 1TB per partition, up to 12 partitions. 'storage_optimized_l2': Supports 2TB per partition, up to 12 partitions.'

AadAuthFailureMode

Describes what response the data plane API of a search service would send for requests that failed authentication.

Name Type Description
http401WithBearerChallenge

string

Indicates that requests that failed authentication should be presented with an HTTP status code of 401 (Unauthorized) and present a Bearer Challenge.

http403

string

Indicates that requests that failed authentication should be presented with an HTTP status code of 403 (Forbidden).

ApiKeyOnly

Indicates that only the API key can be used for authentication.

CloudError

Contains information about an API error.

Name Type Description
error

CloudErrorBody

Describes a particular API error with an error code and a message.

CloudErrorBody

Describes a particular API error with an error code and a message.

Name Type Description
code

string

An error code that describes the error condition more precisely than an HTTP status code. Can be used to programmatically handle specific error cases.

details

CloudErrorBody[]

Contains nested errors that are related to this error.

message

string

A message that describes the error in detail and provides debugging information.

target

string

The target of the particular error (for example, the name of the property in error).

DataPlaneAadOrApiKeyAuthOption

Indicates that either the API key or an access token from a Microsoft Entra ID tenant can be used for authentication.

Name Type Description
aadAuthFailureMode

AadAuthFailureMode

Describes what response the data plane API of a search service would send for requests that failed authentication.

DataPlaneAuthOptions

Defines the options for how the search service authenticates a data plane request. This cannot be set if 'disableLocalAuth' is set to true.

Name Type Description
aadOrApiKey

DataPlaneAadOrApiKeyAuthOption

Indicates that either the API key or an access token from a Microsoft Entra ID tenant can be used for authentication.

apiKeyOnly

ApiKeyOnly

Indicates that only the API key can be used for authentication.

EncryptionWithCmk

Describes a policy that determines how resources within the search service are to be encrypted with customer=managed keys.

Name Type Description
encryptionComplianceStatus

SearchEncryptionComplianceStatus

Describes whether the search service is compliant or not with respect to having non-customer-encrypted resources. If a service has more than one non-customer-encrypted resource and 'Enforcement' is 'enabled' then the service will be marked as 'nonCompliant'.

enforcement

SearchEncryptionWithCmk

Describes how a search service should enforce having one or more non-customer-encrypted resources.

HostingMode

Applicable only for the standard3 SKU. You can set this property to enable up to 3 high density partitions that allow up to 1000 indexes, which is much higher than the maximum indexes allowed for any other SKU. For the standard3 SKU, the value is either 'default' or 'highDensity'. For all other SKUs, this value must be 'default'.

Name Type Description
default

string

The limit on number of indexes is determined by the default limits for the SKU.

highDensity

string

Only application for standard3 SKU, where the search service can have up to 1000 indexes.

Identity

Identity for the resource.

Name Type Description
principalId

string

The principal ID of the system-assigned identity of the search service.

tenantId

string

The tenant ID of the system-assigned identity of the search service.

type

IdentityType

The identity type.

IdentityType

The identity type.

Name Type Description
None

string

SystemAssigned

string

IpRule

The IP restriction rule of the search service.

Name Type Description
value

string

Value corresponding to a single IPv4 address (for example, 123.1.2.3) or an IP range in CIDR format (for example, 123.1.2.3/24) to be allowed.

NetworkRuleSet

Network-specific rules that determine how the search service can be reached.

Name Type Description
ipRules

IpRule[]

A list of IP restriction rules used for an IP firewall. Any IPs that do not match the rules are blocked by the firewall. These rules are only applied when the 'publicNetworkAccess' of the search service is 'enabled'.

PrivateEndpoint

The private endpoint resource from Microsoft.Network provider.

Name Type Description
id

string

The resource id of the private endpoint resource from Microsoft.Network provider.

PrivateEndpointConnection

Describes an existing private endpoint connection to the search service.

Name Type Description
id

string

Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

The name of the resource

properties

PrivateEndpointConnectionProperties

Describes the properties of an existing private endpoint connection to the search service.

type

string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

PrivateEndpointConnectionProperties

Describes the properties of an existing Private Endpoint connection to the search service.

Name Type Description
groupId

string

The group id from the provider of resource the private link service connection is for.

privateEndpoint

PrivateEndpoint

The private endpoint resource from Microsoft.Network provider.

privateLinkServiceConnectionState

PrivateLinkServiceConnectionState

Describes the current state of an existing Private Link Service connection to the Azure Private Endpoint.

provisioningState

PrivateLinkServiceConnectionProvisioningState

The provisioning state of the private link service connection. Valid values are Updating, Deleting, Failed, Succeeded, or Incomplete

PrivateLinkServiceConnectionProvisioningState

The provisioning state of the private link service connection. Valid values are Updating, Deleting, Failed, Succeeded, or Incomplete

Name Type Description
Canceled

string

Provisioning request for the private link service connection resource has been canceled

Deleting

string

The private link service connection is in the process of being deleted.

Failed

string

The private link service connection has failed to be provisioned or deleted.

Incomplete

string

Provisioning request for the private link service connection resource has been accepted but the process of creation has not commenced yet.

Succeeded

string

The private link service connection has finished provisioning and is ready for approval.

Updating

string

The private link service connection is in the process of being created along with other resources for it to be fully functional.

PrivateLinkServiceConnectionState

Describes the current state of an existing Private Link Service connection to the Azure Private Endpoint.

Name Type Default Value Description
actionsRequired

string

None

A description of any extra actions that may be required.

description

string

The description for the private link service connection state.

status

PrivateLinkServiceConnectionStatus

Status of the the private link service connection. Valid values are Pending, Approved, Rejected, or Disconnected.

PrivateLinkServiceConnectionStatus

Status of the the private link service connection. Valid values are Pending, Approved, Rejected, or Disconnected.

Name Type Description
Approved

string

The private endpoint connection is approved and is ready for use.

Disconnected

string

The private endpoint connection has been removed from the service.

Pending

string

The private endpoint connection has been created and is pending approval.

Rejected

string

The private endpoint connection has been rejected and cannot be used.

ProvisioningState

The state of the last provisioning operation performed on the search service. Provisioning is an intermediate state that occurs while service capacity is being established. After capacity is set up, provisioningState changes to either 'succeeded' or 'failed'. Client applications can poll provisioning status (the recommended polling interval is from 30 seconds to one minute) by using the Get Search Service operation to see when an operation is completed. If you are using the free service, this value tends to come back as 'succeeded' directly in the call to Create search service. This is because the free service uses capacity that is already set up.

Name Type Description
failed

string

The last provisioning operation has failed.

provisioning

string

The search service is being provisioned or scaled up or down.

succeeded

string

The last provisioning operation has completed successfully.

PublicNetworkAccess

This value can be set to 'enabled' to avoid breaking changes on existing customer resources and templates. If set to 'disabled', traffic over public interface is not allowed, and private endpoint connections would be the exclusive access method.

Name Type Description
disabled

string

enabled

string

SearchEncryptionComplianceStatus

Describes whether the search service is compliant or not with respect to having non-customer-encrypted resources. If a service has more than one non-customer-encrypted resource and 'Enforcement' is 'enabled' then the service will be marked as 'nonCompliant'.

Name Type Description
Compliant

string

Indicates that the search service is compliant, either because number of non-customer-encrypted resources is zero or enforcement is disabled.

NonCompliant

string

Indicates that the search service has more than one non-customer-encrypted resources.

SearchEncryptionWithCmk

Describes how a search service should enforce having one or more non-customer-encrypted resources.

Name Type Description
Disabled

string

No enforcement will be made and the search service can have non-customer-encrypted resources.

Enabled

string

Search service will be marked as non-compliant if there are one or more non-customer-encrypted resources.

Unspecified

string

Enforcement policy is not explicitly specified, with the behavior being the same as if it were set to 'Disabled'.

SearchSemanticSearch

Sets options that control the availability of semantic search. This configuration is only possible for certain search SKUs in certain locations.

Name Type Description
disabled

string

Indicates that semantic ranking is disabled for the search service.

free

string

Enables semantic ranking on a search service and indicates that it is to be used within the limits of the free tier. This would cap the volume of semantic ranking requests and is offered at no extra charge. This is the default for newly provisioned search services.

standard

string

Enables semantic ranking on a search service as a billable feature, with higher throughput and volume of semantic ranking requests.

SearchService

Describes a search service and its current state.

Name Type Default Value Description
id

string

Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

identity

Identity

The identity of the resource.

location

string

The geo-location where the resource lives

name

string

The name of the resource

properties.authOptions

DataPlaneAuthOptions

Defines the options for how the data plane API of a search service authenticates requests. This cannot be set if 'disableLocalAuth' is set to true.

properties.disableLocalAuth

boolean

When set to true, calls to the search service will not be permitted to utilize API keys for authentication. This cannot be set to true if 'dataPlaneAuthOptions' are defined.

properties.encryptionWithCmk

EncryptionWithCmk

Specifies any policy regarding encryption of resources (such as indexes) using customer manager keys within a search service.

properties.hostingMode

HostingMode

default

Applicable only for the standard3 SKU. You can set this property to enable up to 3 high density partitions that allow up to 1000 indexes, which is much higher than the maximum indexes allowed for any other SKU. For the standard3 SKU, the value is either 'default' or 'highDensity'. For all other SKUs, this value must be 'default'.

properties.networkRuleSet

NetworkRuleSet

Network-specific rules that determine how the search service may be reached.

properties.partitionCount

integer

1

The number of partitions in the search service; if specified, it can be 1, 2, 3, 4, 6, or 12. Values greater than 1 are only valid for standard SKUs. For 'standard3' services with hostingMode set to 'highDensity', the allowed values are between 1 and 3.

properties.privateEndpointConnections

PrivateEndpointConnection[]

The list of private endpoint connections to the search service.

properties.provisioningState

ProvisioningState

The state of the last provisioning operation performed on the search service. Provisioning is an intermediate state that occurs while service capacity is being established. After capacity is set up, provisioningState changes to either 'succeeded' or 'failed'. Client applications can poll provisioning status (the recommended polling interval is from 30 seconds to one minute) by using the Get Search Service operation to see when an operation is completed. If you are using the free service, this value tends to come back as 'succeeded' directly in the call to Create search service. This is because the free service uses capacity that is already set up.

properties.publicNetworkAccess

PublicNetworkAccess

enabled

This value can be set to 'enabled' to avoid breaking changes on existing customer resources and templates. If set to 'disabled', traffic over public interface is not allowed, and private endpoint connections would be the exclusive access method.

properties.replicaCount

integer

1

The number of replicas in the search service. If specified, it must be a value between 1 and 12 inclusive for standard SKUs or between 1 and 3 inclusive for basic SKU.

properties.semanticSearch

SearchSemanticSearch

Sets options that control the availability of semantic search. This configuration is only possible for certain search SKUs in certain locations.

properties.sharedPrivateLinkResources

SharedPrivateLinkResource[]

The list of shared private link resources managed by the search service.

properties.status

SearchServiceStatus

The status of the search service. Possible values include: 'running': The search service is running and no provisioning operations are underway. 'provisioning': The search service is being provisioned or scaled up or down. 'deleting': The search service is being deleted. 'degraded': The search service is degraded. This can occur when the underlying search units are not healthy. The search service is most likely operational, but performance might be slow and some requests might be dropped. 'disabled': The search service is disabled. In this state, the service will reject all API requests. 'error': The search service is in an error state. If your service is in the degraded, disabled, or error states, Microsoft is actively investigating the underlying issue. Dedicated services in these states are still chargeable based on the number of search units provisioned.

properties.statusDetails

string

The details of the search service status.

sku

Sku

The SKU of the search service, which determines billing rate and capacity limits. This property is required when creating a new search service.

tags

object

Resource tags.

type

string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

SearchServiceStatus

The status of the search service. Possible values include: 'running': The search service is running and no provisioning operations are underway. 'provisioning': The search service is being provisioned or scaled up or down. 'deleting': The search service is being deleted. 'degraded': The search service is degraded. This can occur when the underlying search units are not healthy. The search service is most likely operational, but performance might be slow and some requests might be dropped. 'disabled': The search service is disabled. In this state, the service will reject all API requests. 'error': The search service is in an error state. If your service is in the degraded, disabled, or error states, Microsoft is actively investigating the underlying issue. Dedicated services in these states are still chargeable based on the number of search units provisioned.

Name Type Description
degraded

string

The search service is degraded because underlying search units are not healthy.

deleting

string

The search service is being deleted.

disabled

string

The search service is disabled and all API requests will be rejected.

error

string

The search service is in error state, indicating either a failure to provision or to be deleted.

provisioning

string

The search service is being provisioned or scaled up or down.

running

string

The search service is running and no provisioning operations are underway.

SharedPrivateLinkResource

Describes a Shared Private Link Resource managed by the search service.

Name Type Description
id

string

Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

The name of the resource

properties

SharedPrivateLinkResourceProperties

Describes the properties of a Shared Private Link Resource managed by the search service.

type

string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

SharedPrivateLinkResourceProperties

Describes the properties of an existing Shared Private Link Resource managed by the search service.

Name Type Description
groupId

string

The group id from the provider of resource the shared private link resource is for.

privateLinkResourceId

string

The resource id of the resource the shared private link resource is for.

provisioningState

SharedPrivateLinkResourceProvisioningState

The provisioning state of the shared private link resource. Valid values are Updating, Deleting, Failed, Succeeded or Incomplete.

requestMessage

string

The request message for requesting approval of the shared private link resource.

resourceRegion

string

Optional. Can be used to specify the Azure Resource Manager location of the resource to which a shared private link is to be created. This is only required for those resources whose DNS configuration are regional (such as Azure Kubernetes Service).

status

SharedPrivateLinkResourceStatus

Status of the shared private link resource. Valid values are Pending, Approved, Rejected or Disconnected.

SharedPrivateLinkResourceProvisioningState

The provisioning state of the shared private link resource. Valid values are Updating, Deleting, Failed, Succeeded or Incomplete.

Name Type Description
Deleting

string

Failed

string

Incomplete

string

Succeeded

string

Updating

string

SharedPrivateLinkResourceStatus

Status of the shared private link resource. Valid values are Pending, Approved, Rejected or Disconnected.

Name Type Description
Approved

string

Disconnected

string

Pending

string

Rejected

string

Sku

Defines the SKU of a search service, which determines billing rate and capacity limits.

Name Type Description
name

SkuName

The SKU of the search service. Valid values include: 'free': Shared service. 'basic': Dedicated service with up to 3 replicas. 'standard': Dedicated service with up to 12 partitions and 12 replicas. 'standard2': Similar to standard, but with more capacity per search unit. 'standard3': The largest Standard offering with up to 12 partitions and 12 replicas (or up to 3 partitions with more indexes if you also set the hostingMode property to 'highDensity'). 'storage_optimized_l1': Supports 1TB per partition, up to 12 partitions. 'storage_optimized_l2': Supports 2TB per partition, up to 12 partitions.'

SkuName

The SKU of the search service. Valid values include: 'free': Shared service. 'basic': Dedicated service with up to 3 replicas. 'standard': Dedicated service with up to 12 partitions and 12 replicas. 'standard2': Similar to standard, but with more capacity per search unit. 'standard3': The largest Standard offering with up to 12 partitions and 12 replicas (or up to 3 partitions with more indexes if you also set the hostingMode property to 'highDensity'). 'storage_optimized_l1': Supports 1TB per partition, up to 12 partitions. 'storage_optimized_l2': Supports 2TB per partition, up to 12 partitions.'

Name Type Description
basic

string

Billable tier for a dedicated service having up to 3 replicas.

free

string

Free tier, with no SLA guarantees and a subset of the features offered on billable tiers.

standard

string

Billable tier for a dedicated service having up to 12 partitions and 12 replicas.

standard2

string

Similar to 'standard', but with more capacity per search unit.

standard3

string

The largest Standard offering with up to 12 partitions and 12 replicas (or up to 3 partitions with more indexes if you also set the hostingMode property to 'highDensity').

storage_optimized_l1

string

Billable tier for a dedicated service that supports 1TB per partition, up to 12 partitions.

storage_optimized_l2

string

Billable tier for a dedicated service that supports 2TB per partition, up to 12 partitions.