Introduction
After exploring how to build a manual Vector RAG solution with Azure AI Search in the previous blog, it’s now time to actually use it in a real-world low-code scenario.
Since we specialize in low-code solutions, the next logical step was integrating our Azure AI Search index with Microsoft Copilot Studio.
However, we quickly encountered an unexpected limitation caused by the architecture of our manually created vector index and the restrictions of the Azure AI Search Free Tier.
Unsupported Indexes Error
The issue appeared as the following message inside Copilot Studio:
Unsupported indexes — Some of your indexes are unsupported because they don't use integrated vectorization.
This happens because our Azure AI Search index was created as a traditional full-text/vector hybrid index where embeddings were generated externally and manually pushed into the index.
While the index already contained a vector field (contentVector) along with a vector search profile and algorithm configuration, it was missing one critical component:
"vectorizers": []
Copilot Studio specifically expects indexes configured with integrated vectorization, meaning Azure AI Search itself must manage the embedding generation pipeline through a configured vectorizer.
Workaround — Use Azure AI Search Through a Custom Connector
Copilot Studio
↓
Power Automate
↓
Azure AI Search REST API
Testing the API with Postman
Before building the Power Automate flow or Custom Connector, it’s a good idea to first test the Azure AI Search REST API using Postman.
Create a new POST request using:
https://your-search-service.search.windows.net/indexes/documents-index/docs/search?api-version=2024-07-01
Add the following headers:
- Content-Type: application/json
- api-key: YOUR_API_KEY
Or use the following cURL sample to test directly from a terminal:
curl --location 'https://your-search-service.search.windows.net/indexes/documents-index/docs/search?api-version=2024-07-01' \
--header 'Content-Type: application/json' \
--header 'api-key: YOUR_API_KEY_HERE' \
--data '{
"search": "What does Bhagavad Gita teach about selfless action?",
"top": 5,
"select": "content"
}'
Creating the Custom Connector
Once the REST API works correctly in Postman, the next step is to create a Custom Connector in Power Platform.
This allows Copilot Studio and Power Automate to communicate directly with Azure AI Search without relying on the native connector restrictions.
Use the following Swagger/OpenAPI definition when creating the custom connector. Replace your-search-service.search.windows.net with your actual Azure AI Search service hostname:
swagger: '2.0'
info:
title: AzureAISearch
description: Azure AI Search Custom Connector
version: '1.0'
host: your-search-service.search.windows.net
basePath: /
schemes:
- https
consumes:
- application/json
produces:
- application/json
paths:
/indexes/documents-index/docs/search:
post:
summary: Search Documents
description: Search Azure AI Search index
operationId: SearchDocuments
parameters:
- name: api-version
in: query
required: true
type: string
default: '2024-07-01'
- name: body
in: body
required: true
schema:
type: object
required:
- search
properties:
search:
type: string
description: Search Query
top:
type: integer
format: int32
description: Number of results
default: 5
select:
type: string
description: Fields to return
default: content
responses:
'200':
description: Successful search response
schema:
type: object
properties:
'@odata.context':
type: string
value:
type: array
items:
type: object
properties:
'@search.score':
type: number
format: float
content:
type: string
securityDefinitions:
api_key:
type: apiKey
in: header
name: api-key
security:
- api_key: []
definitions: {}
Once imported, configure the API Key authentication using the Azure AI Search admin/query key, and the connector will be ready to use inside Power Automate or Copilot Studio.
Integrating the Custom Connector with Copilot Studio
With the Custom Connector now working successfully, the final step is integrating it into Copilot Studio and using Azure AI Search as the grounding source for AI-generated responses.
Step 1 — Create a New Topic
Create a Topic with trigger phrases such as:
- Search knowledge
- Ask document
- Bhagavad Gita
- Bible
Step 2 — Add the Custom Connector Action
Add the SearchDocuments action from the Custom Connector and pass:
search → Activity.Texttop → 5select → content
Step 3 — Use Results as Grounding Context
Finally, add a Message node and instruct Copilot Studio to generate responses only from the returned search results.
Conclusion
This approach demonstrates how low-code platforms like Copilot Studio can still integrate with advanced AI architectures, even when native connectors impose limitations.
By combining Azure AI Search, Power Automate, and Custom Connectors, we can create flexible and scalable RAG solutions without depending on integrated vectorization support.