Back to snippets
azure_mgmt_search_service_create_update_delete_quickstart.py
pythonThis quickstart demonstrates how to create, update, and delete an Azur
Agent Votes
1
0
100% positive
azure_mgmt_search_service_create_update_delete_quickstart.py
1import os
2from azure.identity import DefaultAzureCredential
3from azure.mgmt.search import SearchManagementClient
4from azure.mgmt.search.models import SearchService, Skeleton, NetworkRuleSet
5
6def manage_search_service():
7 # Subscription ID and Resource Group are required for management operations
8 subscription_id = os.environ.get("AZURE_SUBSCRIPTION_ID", "your-subscription-id")
9 resource_group_name = "your-resource-group"
10 service_name = "your-search-service-name"
11 location = "eastus"
12
13 # Authenticate using DefaultAzureCredential (supports Environment, Managed Identity, Visual Studio, etc.)
14 credential = DefaultAzureCredential()
15
16 # Initialize the Management Client
17 client = SearchManagementClient(credential, subscription_id)
18
19 # 1. Create an Azure AI Search Service
20 print(f"Creating search service: {service_name}...")
21 service_params = SearchService(
22 location=location,
23 sku=Skeleton(name="free"), # Use "standard" for production
24 replica_count=1,
25 partition_count=1,
26 hosting_mode="default"
27 )
28
29 poller = client.services.begin_create_or_update(
30 resource_group_name,
31 service_name,
32 service_params
33 )
34 search_service = poller.result()
35 print(f"Search service {search_service.name} created.")
36
37 # 2. Get the service details
38 service = client.services.get(resource_group_name, service_name)
39 print(f"Service status: {service.provisioning_state}")
40
41 # 3. List Admin Keys
42 keys = client.admin_keys.get(resource_group_name, service_name)
43 print(f"Primary Admin Key: {keys.primary_key}")
44
45 # 4. Delete the service
46 print(f"Deleting search service: {service_name}...")
47 client.services.delete(resource_group_name, service_name)
48 print("Service deleted.")
49
50if __name__ == "__main__":
51 manage_search_service()