Forum Discussion
Coding for adding API key from Success Factors to Power BI
- 2 months ago
Hi elabach
Thanks for the additional details.
Based on what you described, as per my understanding, it sounds like this may be a more complex authentication setup rather than a simple API token that can be plugged directly into Power BI, which could explain why the sample script isn’t working as expected.
If your LMS admin can provide the exact OData endpoint along with a ready to use Bearer token, connecting via Web.Contents in Power Query may be possible. If the private key is part of a multi-step authentication process, you may need a custom connector or another integration approach instead.
Given the firewall restrictions as well, I’d suggest checking with your LMS admin on the exact authentication flow and whether they can share a working sample API request. That should make it much easier to determine the right path forward.
If there are any deviations from your expectation please let us know we are happy to address.
Thanks.
- 2 months ago
Thank you for the follow-up post v-priyankata. Yes, I did get the coding resolved using Raw (not JSON).
Hi elabach
Thank you for reaching out to the Microsoft Fabric Forum Community.
Power BI can connect to SuccessFactors OData APIs, but the right approach depends on how authentication is configured in your tenant.
Could you share a few more details :
- The endpoint URL you’re trying to connect to
- The authentication method being used (Basic, OAuth, Bearer token, API key, etc.)
- The exact error message you’re seeing
- Your current Power Query (M) script
One thing to keep in mind is that the standard OData connector has some authentication limitations. If your SuccessFactors API uses token-based or custom authentication, using Web.Contents in Power Query may be a better option since it gives you more control over request headers.
If the authentication flow involves multiple steps, such as generating or refreshing tokens, a custom connector may also be worth considering.
You may also find these Microsoft docs helpful depending on your scenario:
Power Query OData Feed connector - Power Query | Microsoft Learn
Connector Extensibility in Power BI - Power BI | Microsoft Learn
Authentication in desktop apps - Power Query | Microsoft Learn
Web.Contents - PowerQuery M | Microsoft Learn
If you can share the script or error details, the community can help point you in the right direction.
If there are any deviations from your expectation please let us know we are happy to address.
Thanks.
- elabach3 months agoNew Member
Hello - Thank you for your reply. I have provided requested additional info in blue below - apologies in advance as I am not a developer and terminology may not be correct.
- The endpoint URL you’re trying to connect to. The endplint url is our organization's SAP Learning Management System (Success Factors) and is security protected. Any assistance I receive for coding I will need to put in myself because of firewall issues.
- The authentication method being used (Basic, OAuth, Bearer token, API key, etc.). I have a token that includes Success Factors Co. ID, API user ID, client ID and private key provided by our LMS admin. I believe it is designed to pull OData.
- Your current Power Query (M) script. I found some example scripting from a blog on SAP community that I have been trying to replicate at: https://community.sap.com/t5/human-capital-management-blog-posts-by-members/a-step-by-step-guide-to-integrating-sap-successfactors-with-power-bi/ba-p/14323482. I was initially trying to replicate this by putting it in exactly as written.
- The exact error message you’re seeing. When I put above scripting into Advanced Editor in PowerBI, I get an error that says DataSourceError:Web Contents failed to get contents from endpoint url. As mentioned above, I am not familiar with the type of file that this example script is trying to pull from but I am trying to pull 9 columns of data from a LMS report that includes 45 columns of data so I am thinking I need a more customized approach. As I mentioned, I am not a developer and do not have experience in M coding. I am open to any recommendations you may have to help me move forward on this project. Thanks in advance.
- v-priyankata2 months agoCommunity Support
Hi elabach
Thanks for the additional details.
Based on what you described, as per my understanding, it sounds like this may be a more complex authentication setup rather than a simple API token that can be plugged directly into Power BI, which could explain why the sample script isn’t working as expected.
If your LMS admin can provide the exact OData endpoint along with a ready to use Bearer token, connecting via Web.Contents in Power Query may be possible. If the private key is part of a multi-step authentication process, you may need a custom connector or another integration approach instead.
Given the firewall restrictions as well, I’d suggest checking with your LMS admin on the exact authentication flow and whether they can share a working sample API request. That should make it much easier to determine the right path forward.
If there are any deviations from your expectation please let us know we are happy to address.
Thanks.
- v-priyankata2 months agoCommunity Support
Hi elabach
Thank you for reaching out to the Microsoft Fabric Forum Community.
I hope the information provided was helpful. If you still have questions, please don't hesitate to reach out to the community.