Learn from the best! Meet the four finalists headed to the FINALS of the Power BI Dataviz World Championships! Register now
I’m working on integrating ChatGPT or Google Gemini into Power BI using a custom visual to enable interactive AI responses directly from the report, based on the dataset contents.
Everything works fine when I test the API in Postman, but Power BI blocks the API call from the custom visual due to security restrictions, most likely related to Content Security Policy (CSP) or cross-origin (CORS) issues.
Built a custom visual in Power BI using React and TypeScript
Integrated OpenAI/Gemini API logic inside the visual
Created a proxy API server to forward the API requests
Used tunneling tools like:
Localtunnel
ngrok
But unfortunately, the API calls are still being blocked when the custom visual is rendered inside Power BI Desktop
How can I successfully connect Power BI custom visual to OpenAI/Gemini API through a proxy or tunnel?
Is there a recommended tunneling or reverse proxy approach that works with Power BI visuals?
Please share your thoughts.
Any guidance or step-by-step solution would be greatly appreciated!
Thanks!
I've faced similar CSP/CORS issues when trying to integrate external APIs directly into Power BI visuals. The security restrictions are quite strict, and even proxy servers often get blocked because Power BI treats them as external origins.
One approach that worked for me was embedding the AI logic differently, instead of calling APIs from the visual, I pre-processed insights during data refresh. If you're looking for a ready-made solution that handles these integration challenges, you might find PowerMind interesting, it's designed specifically to embed AI assistants inside Power BI dashboards without running into these blocking issues.
Check out our LinkedIn demo post for a quick look at how it works in practice.
Hi @jesikamaurya,
long time no answer to your question. Maybe I can help you here.
There is a new feature for Fabric/Power BI called User Data Function.
Check out the blog here: Announcing Fabric User Data Functions (Preview) | Microsoft Fabric Blog | Microsoft Fabric
I already saw demos from Microsoft where they put an API call in a UDF to call a LLM endpoint. This function was then provisioned to Power BI for calling and taking the input data from the report.
Best regards!
PS: If you find this post helpful consider leaving kudos or mark it as solution