api
482 TopicsIssue with EntityLinks in Project Online API
Hello everyone, I'm working with Project Online and trying to retrieve task data via the API. While reviewing the metadata, I noticed that PublishedTasks have a navigation property called EntityLinks, but I couldn't find clear documentation on its purpose or usage. What I Tried I attempted the following API requests: Retrieve EntityLinks for a task: GET https://{sitename}.sharepoint.com/sites/pwa/_api/ProjectServer/Projects(guid'{validProjectId}')/Tasks('{validTaskId}')/EntityLinks Expand EntityLinks within tasks GET https://{sitename}.sharepoint.com/sites/pwa/_api/ProjectServer/Projects(guid'{validProjectId}')/Tasks?$expand=EntityLinks Observations When the project has tasks, the request fails with: { "odata.error": { "code": "42, Microsoft.ProjectServer.PJClientCallableException", "message": { "lang": "en-US", "value": "PJClientCallableException: GeneralUnhandledException\r\nGeneralUnhandledException\r\nException = System.NotImplementedException: The method or operation is not implemented.\r\n at Microsoft.Office.Project.Server.BusinessLayer.EntityLinks.ThrowIfEntityLinksNotSupported()\r\n at Microsoft.Office.Project.Server.BusinessLayer.EntityLinks.ReadEntityLinksForEntities(Guid[] entityUids)\r\n at Microsoft.Office.Project.Server.Wcf.Implementation.CSOMImpl.<>c__DisplayClass35_0.<ReadEntityLinksForEntities>b__1()\r\n at Microsoft.Office.Project.Server.BusinessObjectMethodInvocation.InvokeBusinessObjectMethod(String methodName, IEnumerable`1 actions)" } } } If the project has no tasks, the request returns an empty response without errors { "odata.metadata": "https://{sitename}.sharepoint.com/sites/pwa/_api/$metadata#SP.ApiData.PublishedTasks", "value": [ ] } Other navigation properties (e.g., Predecessors) work fine with a similar request. Questions What are EntityLinks, and what do they refer to? How can they be created via the UI in Project Online? Is there a way to retrieve them successfully through the API? I couldn't find references for this error or EntityLinks. Any insights would be greatly appreciated! Thanks in advance!24Views0likes0CommentsIssue with EntityLinks in Project Online API
Hello everyone, I'm working with Project Online and trying to retrieve task data via the API. While reviewing the metadata, I noticed that PublishedTasks have a navigation property called EntityLinks, but I couldn't find clear documentation on its purpose or usage. What I Tried I attempted the following API requests: Retrieve EntityLinks for a task: GET https://{sitename}.sharepoint.com/sites/pwa/_api/ProjectServer/Projects(guid'{validProjectId}')/Tasks('{validTaskId}')/EntityLinks Expand EntityLinks within tasks: GET https://{sitename}.sharepoint.com/sites/pwa/_api/ProjectServer/Projects(guid'{validProjectId}')/Tasks?$expand=EntityLinks Observations When the project has tasks, the request fails with: { "odata.error": { "code": "42, Microsoft.ProjectServer.PJClientCallableException", "message": { "lang": "en-US", "value": "PJClientCallableException: GeneralUnhandledException\r\nGeneralUnhandledException\r\nException = System.NotImplementedException: The method or operation is not implemented.\r\n at Microsoft.Office.Project.Server.BusinessLayer.EntityLinks.ThrowIfEntityLinksNotSupported()\r\n at Microsoft.Office.Project.Server.BusinessLayer.EntityLinks.ReadEntityLinksForEntities(Guid[] entityUids)\r\n at Microsoft.Office.Project.Server.Wcf.Implementation.CSOMImpl.<>c__DisplayClass35_0.<ReadEntityLinksForEntities>b__1()\r\n at Microsoft.Office.Project.Server.BusinessObjectMethodInvocation.InvokeBusinessObjectMethod(String methodName, IEnumerable`1 actions)" } } } If the project has no tasks, the request returns an empty response without errors: { "odata.metadata": "https://{sitename}.sharepoint.com/sites/pwa/_api/$metadata#SP.ApiData.PublishedTasks", "value": [ ] } Other navigation properties (e.g., Predecessors) work fine with a similar request. Questions What are EntityLinks, and what do they refer to? How can they be created via the UI in Project Online? Is there a way to retrieve them successfully through the API? I couldn't find references for this error or EntityLinks. Any insights would be greatly appreciated! Thanks in advance!11Views0likes0CommentsGetting delta change for files from team and its channels
We are processing delta changes from onedrive data and teams data. We are using delta api so if someone share the current file with any user we got the file details in delta api for onedrive item. But in case of teams and channle data it won't. So is there any way to get delta for the files from team if shared with some othe user or team. We also want api to know files shared with team as we are also fetching data shared with user by using insight api9Views0likes0CommentsAuthentication issue while using Client Credential through Oauth2.0
Hi Community Hope you are doing well. I am unable to authenticate to our registered app in azure. I am looking to test the get/users graph api using insomnia (similar tool as postman). During Token generation we are getting 401 error. we are provide correct Client ID and Secret with right scope url. I created the app, added the necessary permissions and the client credentials. Do I need to add a redirect uri to the app? Does the app need to be registered account types as "accounts in any organization directory"? I am getting a 401 unauthorized error Can you please assist what I'm what is missing here? I will really do appreciate your help. Thanks Vatan32Views0likes1CommentError getting new token
Hi, i want to add a new member to a private channel. I follow the authentication flow as follows: a) starting with url https://login.microsoftonline.com/#tenantid#/oauth2/v2.0/authorize?client_id=#clientid#&response_type=code&response_mode=query&redirect_uri=https://www.dashandwerk.net/dashandwerk/api/graph/webhook&scope=offline_access%20TeamMember.ReadWrite.All%20ChannelMember.ReadWrite.All%20User.Read&state=1234" b) my redirect_uri will open and i am getting a new code c) this new code will be used to get a new token with this url https://login.microsoftonline.com/#tenant#/oauth2/v2.0/token?client_id=#client_id# &client_secret=#client_secret# &scope=offline_access%20TeamMember.ReadWrite.All,ChannelMessage.Send%20User.Read%20Mail.Read%20ChannelMember.ReadWrite.All' &code=#code# &redirect_uri=https://www.dashandwerk.net/dashandwerk/api/graph/webhook &grant_type=authorization_code But when getting the new token, i am getting this error: "{"error":"invalid_grant","error_description":"AADSTS65001: The user or administrator has not consented to use the application with ID '640a5194-77b1-40cf-b774-fc9eb9a6d128' named 'dashandwerk-teams'. Send an interactive authorization request for this user and resource. Trace ID: 34a8ea64-b664-448c-9b7c-b4c9a92e0300 Correlation ID: 77e80082-9e58-4da9-8752-2d7bc75d7262 Timestamp: 2025-03-03 11:11:08Z","error_codes":[65001],"timestamp":"2025-03-03 11:11:08Z","trace_id":"34a8ea64-b664-448c-9b7c-b4c9a92e0300","correlation_id":"77e80082-9e58-4da9-8752-2d7bc75d7262","suberror":"consent_required"} Searching on google shows this: Make sure you have followed the steps to grant admin consent. You can do this under Application > API permissions > Grant admin consent. But all grants have admin consent in the office admin center for intra at the app registration. Any ideas to solve this issue ?16Views0likes1CommentOffice 365 API - Subscription
Hi, We have been using the Office 365 API to send events to our SIEM for a number of months. Since Monday we have received the following error: AF20023","message":"The subscription was disabled I've looked at "https://learn.microsoft.com/en-us/office/office-365-management-api/troubleshooting-the-office-365-management-activity-api#enable-unified-audit-logging-in-office-365" but even if I try and start a subscription, it will still return that it is disabled? Not entirely sure what else I can check.258Views0likes1CommentStep-by-step: Integrate Ollama Web UI to use Azure Open AI API with LiteLLM Proxy
Introductions Ollama WebUI is a streamlined interface for deploying and interacting with open-source large language models (LLMs) like Llama 3 and Mistral, enabling users to manage models, test them via a ChatGPT-like chat environment, and integrate them into applications through Ollama’s local API. While it excels for self-hosted models on platforms like Azure VMs, it does not natively support Azure OpenAI API endpoints—OpenAI’s proprietary models (e.g., GPT-4) remain accessible only through OpenAI’s managed API. However, tools like LiteLLM bridge this gap, allowing developers to combine Ollama-hosted models with OpenAI’s API in hybrid workflows, while maintaining compliance and cost-efficiency. This setup empowers users to leverage both self-managed open-source models and cloud-based AI services. Problem Statement As of February 2025, Ollama WebUI, still do not support Azure Open AI API. The Ollama Web UI only support self-hosted Ollama API and managed OpenAI API service (PaaS). This will be an issue if users want to use Open AI models they already deployed on Azure AI Foundry. Objective To integrate Azure OpenAI API via LiteLLM proxy into with Ollama Web UI. LiteLLM translates Azure AI API requests into OpenAI-style requests on Ollama Web UI allowing users to use OpenAI models deployed on Azure AI Foundry. If you haven’t hosted Ollama WebUI already, follow my other step-by-step guide to host Ollama WebUI on Azure. Proceed to the next step if you have Ollama WebUI deployed already. Step 1: Deploy OpenAI models on Azure Foundry. If you haven’t created an Azure AI Hub already, search for Azure AI Foundry on Azure, and click on the “+ Create” button > Hub. Fill out all the empty fields with the appropriate configuration and click on “Create”. After the Azure AI Hub is successfully deployed, click on the deployed resources and launch the Azure AI Foundry service. To deploy new models on Azure AI Foundry, find the “Models + Endpoints” section on the left hand side and click on “+ Deploy Model” button > “Deploy base model” A popup will appear, and you can choose which models to deploy on Azure AI Foundry. Please note that the o-series models are only available to select customers at the moment. You can request access to the o-series models by completing this request access form, and wait until Microsoft approves the access request. Click on “Confirm” and another popup will emerge. Now name the deployment and click on “Deploy” to deploy the model. Wait a few moments for the model to deploy. Once it successfully deployed, please save the “Target URI” and the API Key. Step 2: Deploy LiteLLM Proxy via Docker Container Before pulling the LiteLLM Image into the host environment, create a file named “litellm_config.yaml” and list down the models you deployed on Azure AI Foundry, along with the API endpoints and keys. Replace "API_Endpoint" and "API_Key" with “Target URI” and “Key” found from Azure AI Foundry respectively. Template for the “litellm_config.yaml” file. model_list: - model_name: [model_name] litellm_params: model: azure/[model_name_on_azure] api_base: "[API_ENDPOINT/Target_URI]" api_key: "[API_Key]" api_version: "[API_Version]" Tips: You can find the API version info at the end of the Target URI of the model's endpoint: Sample Endpoint - https://example.openai.azure.com/openai/deployments/o1-mini/chat/completions?api-version=2024-08-01-preview Run the docker command below to start LiteLLM Proxy with the correct settings: docker run -d \ -v $(pwd)/litellm_config.yaml:/app/config.yaml \ -p 4000:4000 \ --name litellm-proxy-v1 \ --restart always \ ghcr.io/berriai/litellm:main-latest \ --config /app/config.yaml --detailed_debug Make sure to run the docker command inside the directory where you created the “litellm_config.yaml” file just now. The port used to listen for LiteLLM Proxy traffic is port 4000. Now that LiteLLM proxy had been deployed on port 4000, lets change the OpenAI API settings on Ollama WebUI. Navigate to Ollama WebUI’s Admin Panel settings > Settings > Connections > Under the OpenAI API section, write http://127.0.0.1:4000 as the API endpoint and set any key (You must write anything to make it work!). Click on “Save” button to reflect the changes. Refresh the browser and you should be able to see the AI models deployed on the Azure AI Foundry listed in the Ollama WebUI. Now let’s test the chat completion + Web Search capability using the "o1-mini" model on Ollama WebUI. Conclusion Hosting Ollama WebUI on an Azure VM and integrating it with OpenAI’s API via LiteLLM offers a powerful, flexible approach to AI deployment, combining the cost-efficiency of open-source models with the advanced capabilities of managed cloud services. While Ollama itself doesn’t support Azure OpenAI endpoints, the hybrid architecture empowers IT teams to balance data privacy (via self-hosted models on Azure AI Foundry) and cutting-edge performance (using Azure OpenAI API), all within Azure’s scalable ecosystem. This guide covers every step required to deploy your OpenAI models on Azure AI Foundry, set up the required resources, deploy LiteLLM Proxy on your host machine and configure Ollama WebUI to support Azure AI endpoints. You can test and improve your AI model even more with the Ollama WebUI interface with Web Search, Text-to-Image Generation, etc. all in one place.531Views0likes0CommentsStatus code keep changing after every query (404 & 200)
I am using the graph api to get the folders under my OneDrive root directory but the result is different in every run (most of the time failing). I have given it the Files.Read and Files.ReadWrite permission. This happened after I changed my microsoft password, but changing it again doesn't fix the issue. The query: https://graph.microsoft.com/v1.0/me/drive/root/children?%24select=name%2C%20id The screen recording: https://youtu.be/NIaz0Q37osg Timestamp: 0:00 - 0:13: 404 Not found error 0:16 - 0:26: 200 Files are found correctly 0:27 - 0:32: 404 Not found error again, without changing the query18Views0likes0CommentsLink two projects in Project online using REST API
Hi All, I have a requirement where I need to link multiple projects to a master project programmatically in Project Online. I've explored several options but haven't had any success so far. I'm looking for guidance or best practices to accomplish this task. I have the option to use either Python or Power Automate, so any insights or solutions using these tools would be greatly appreciated. Thanks in advance for your help.29Views0likes2Comments