For Agents
Define and manage Azure Cognitive Search indexes, indexers, datasources, skillsets, and synonym maps that drive document ingestion and query behaviour.
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the SearchServiceClient, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with SearchServiceClient API.
Create or update an index schema with fields, analyzers, and scoring profiles
Configure a datasource pointing at Azure SQL, Cosmos DB, Blob Storage, or Table Storage
Define an indexer that pulls documents from a datasource into an index on a schedule
Attach a skillset for AI enrichment such as OCR, key phrase extraction, or entity recognition
GET STARTED
Use for: I want to create a new search index with custom fields, Set up an indexer that pulls from Cosmos DB, Trigger an indexer run on demand, Get the status of the most recent indexer execution
Not supported: Does not query documents, provision the search service, or manage admin keys — use for defining indexes, indexers, datasources, skillsets, and synonym maps only.
Jentic publishes the only available OpenAPI document for SearchServiceClient, keeping it validated and agent-ready.
Jentic publishes the only available OpenAPI specification for SearchServiceClient, keeping it validated and agent-ready. The Azure Cognitive Search data plane management API defines the indexes, indexers, datasources, skillsets, and synonym maps that power a search service. Agents can create or update an index schema, configure an indexer to pull documents from a datasource, attach a skillset for AI enrichment, and trigger or reset indexer runs. It complements SearchIndexClient by configuring the structures that queries run against.
Trigger, reset, and inspect status of indexer runs to debug ingestion failures
Manage synonym maps to expand queries with controlled vocabulary
Analyze how text is tokenised by an index analyzer before changing the schema
Patterns agents use SearchServiceClient API for, with concrete tasks.
★ Index Schema Definition for a New Application
Search teams use SearchServiceClient to create an index whose fields, analyzers, and scoring profiles match the application's data model. The PUT /indexes('{indexName}') endpoint accepts the full schema and applies it atomically. Adding fields later is allowed; changing field types requires a new index version. The analyze endpoint lets developers preview tokenisation before committing schema changes.
PUT /indexes('orders') with a body defining fields title (Edm.String, searchable), price (Edm.Double, filterable), and category (Edm.String, facetable)
Scheduled Ingestion via Indexers and Datasources
When source data lives in Azure SQL, Cosmos DB, or Blob Storage, an indexer pulls changes on a schedule and pushes them into the index. The datasource resource holds the connection details and change tracking policy, the indexer resource holds the schedule and field mappings, and search.run triggers an immediate execution. Status reports per-run document counts and any failed records.
PUT a datasource of type cosmosdb with connectionString, then PUT an indexer linking it to the orders index, then POST search.run to trigger immediate execution
AI Enrichment Pipelines via Skillsets
Skillsets attach cognitive enrichment to an indexer, performing OCR on images, key phrase extraction on text, language detection, or custom Web API skills. The skillset PUT defines the chain of skills and their input output mappings, and the indexer references the skillset to invoke enrichment at ingestion. The output fields land in the index and become searchable like any other field.
PUT a skillset with three skills (OCR, key phrase extraction, language detection) and reference its name from the indexer's skillsetName property
Indexer Failure Forensics
When an indexer reports failures, an operator needs to see which documents failed and why. The search.status endpoint returns the last few execution records including item counts, failed item details, and the start and end timestamps for each run. Combined with search.reset, this lets the agent rerun a failed window after fixing the upstream data.
GET indexers('orders-indexer')/search.status and return the lastResult.errors array containing the document keys that failed
Agent-Driven Index Setup via Jentic
Through Jentic, an MLOps agent can search for create azure search index, load the index PUT schema, populate field definitions from an upstream data contract, and execute the call with a managed admin key. The same flow chains into datasource and indexer creation so the agent can stand up a full ingestion pipeline in a single workflow.
Search Jentic for create azure search index, load the index PUT schema, execute it with a fields array, then load and execute datasource and indexer PUTs to complete the pipeline
31 endpoints — jentic publishes the only available openapi specification for searchserviceclient, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/indexes('{indexName}')
Create or update an index schema
/indexers('{indexerName}')
Create or update an indexer
/indexers('{indexerName}')/search.run
Run an indexer on demand
/indexers('{indexerName}')/search.status
Get indexer execution status
/indexers('{indexerName}')/search.reset
Reset an indexer for full reindex
/datasources('{dataSourceName}')
Create or update a datasource
/skillsets('{skillsetName}')
Create or update a skillset
/indexes('{indexName}')/search.analyze
Analyze tokenisation for a string
/indexes('{indexName}')
Create or update an index schema
/indexers('{indexerName}')
Create or update an indexer
/indexers('{indexerName}')/search.run
Run an indexer on demand
/indexers('{indexerName}')/search.status
Get indexer execution status
/indexers('{indexerName}')/search.reset
Reset an indexer for full reindex
Three things that make agents converge on Jentic-routed access.
Credential isolation
Azure Cognitive Search admin keys are stored encrypted in the Jentic vault. Agents receive scoped api-key headers — the raw key never enters the agent context, and Jentic can rotate the key via SearchManagementClient without changing agent code.
Intent-based discovery
Agents search by intent such as create azure search index or set up indexer, and Jentic returns the matching SearchServiceClient operation with its full input schema across indexes, indexers, datasources, skillsets, and synonym maps.
Time to first call
Direct integration: 2-4 days to wire api-key handling and the multiple resource-type schemas. Through Jentic: under an hour to search, load, and execute an index plus indexer setup.
Alternatives and complements available in the Jentic catalogue.
Azure SearchIndexClient
Data plane API that queries the indexes you define here
Use after defining the index to push documents and run queries against it
Azure SearchManagementClient
ARM control plane that provisions the search service this API runs on
Use first to provision the search service, then use SearchServiceClient to define indexes inside it
Algolia Search API
Hosted search-as-a-service alternative outside the Azure stack
Choose when the team prefers a managed search service with simpler index configuration
Specific to using SearchServiceClient API through Jentic.
Why is there no official OpenAPI spec for SearchServiceClient?
Microsoft Azure does not publish a unified OpenAPI specification for the Cognitive Search data plane management surface. Jentic generates and maintains this spec so that AI agents and developers can call SearchServiceClient via structured tooling. It is validated against the live search.windows.net data plane and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does SearchServiceClient use?
It uses an admin api-key in the api-key request header. Admin keys are required for write operations on indexes, indexers, datasources, and skillsets. Jentic stores the admin key in its vault so the agent never holds the raw value.
Can I attach AI enrichment to an indexer with this API?
Yes. PUT a skillset resource via /skillsets('{name}') with the chain of cognitive skills, then reference its name in the indexer's skillsetName property. The indexer invokes the skillset on each document ingested and stores enriched fields back into the target index.
How do I trigger an indexer run on demand?
POST to /indexers('{indexerName}')/search.run. The service starts an indexer execution immediately, separate from the scheduled cadence. Status appears in /indexers('{indexerName}')/search.status alongside scheduled runs.
What are the rate limits for SearchServiceClient?
Throughput is bound by the search service tier and the number of replicas and partitions provisioned. Heavy schema or skillset writes are uncommon and the limits are generous for those operations. Throttled requests return HTTP 503 with a Retry-After header.
How do I set up an indexer through Jentic?
Search Jentic for create azure search indexer, call client.load on the indexer PUT operation to receive its input schema, then call client.execute with a body that references your datasource and target index. Jentic injects the api-key header and returns the created indexer.
/datasources('{dataSourceName}')
Create or update a datasource
/skillsets('{skillsetName}')
Create or update a skillset
/indexes('{indexName}')/search.analyze
Analyze tokenisation for a string