developer
117 TopicsUnexpected 429 Errors from SharePoint /list and /content APIs – Not Near Documented Limits
Hi everyone, I'm currently working with the Microsoft Graph /list API to retrieve files from a SharePoint document library and then using the /content endpoint to download each file. After processing approximately 1000 records, I began receiving 429 Too Many Requests errors. On reviewing the API traffic from my application, I found that we're only making about 150 API calls per minute, which is well below the documented thresholds. According to Microsoft’s guidance on avoiding throttling in SharePoint Online (link to docs), the usage is nowhere near the stated API or egress limits — especially the tenant-level thresholds like 1,200 API calls/min or 100GB/hour egress. What’s puzzling is the lack of transparency — I’m unable to find any dashboards, logs, or reports in Microsoft 365 or Entra that show how many API requests are being made or what limits are being approached. My questions: Are there any hidden or undocumented limits (e.g., per-user, per-app, or per-site collection)? Could /content downloads have higher cost per call or impact the limit differently? Is there any way to monitor detailed API usage against SharePoint or Graph API from the Microsoft portal? Would appreciate any guidance or insights from others who’ve faced similar issues! Thanks in advance!7Views0likes0CommentsPin a message in a channel in MS Teams using MS Graph API
I've created a MS Teams app and as part of it's functionality, it has to pin the message (in both one-on-one chat and in a channel) on behalf of the user I'm using below API to pin a message in a channel in MS Teams https://graph.microsoft.com/v1.0/chats/<chatID>/pinnedMessages Endpoint: - POST https://graph.microsoft.com/v1.0/chats/19:....@thread.tacv2/pinnedMessages Body: { "email address removed for privacy reasons": "https://graph.microsoft.com/v1.0/chats/19:....@thread.tacv2/messages/<message_id>" } Note: - 19:....@thread.tacv2 is the chatID of the channel And I get a successful response as below 201 Created { "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#chats('19%3.......%40thread.tacv2')/pinnedMessages/$entity", "id": "<message_id>" } But when I go that particular channel, I don't see the message as the pinned message in the channel But when I try to get the list of pinned message in a channel using below API, it gives the response that the above message which I pinned. But I don't see it in the channel in MS Teams. And I'm facing this issue only while pinning the message in the channel using MS Graph API. I don't face the same issue with one-on-one chat with the bot I've created.51Views0likes1CommentHow to get a user P.O. Box from Active directory using Graph API
Inside our Active Directory, we have this value for the P.O Box:- now i want to get this value based on the user's email address using graph api, i tried those endpoint, but never able to get the P.O. Box value, here what i tried:- 1) https://graph.microsoft.com/beta/users/<useremail>/profile/ I got this as part of the response, "company": { "displayName": "****", "pronunciation": null, "department": "***", "companyCode": null, "officeLocation": "****", "webUrl": null, "secondaryDepartment": null, "address": { "type": "business", "postOfficeBox": null, "street": "****", "city": "***", "state": "***", "countryOrRegion": "**", "postalCode": "***" } } } there there is postOfficeBox but it is null 2) https://graph.microsoft.com/v1.0/users/<email address> this does not include P.O. Box any advice?54Views0likes4Comments"Insufficient privileges to complete the operation" while using Graph API
Hello, everyone! I'm trying to use the Microsoft Graph API with App Authentication to assign an Product License to a user. My App has the App permissions "LicenseAssignment.ReadWrite.All", "Directory.ReadWrite.All" and "User.ReadWrite.All". https://graph.microsoft.com/v1.0/users/$upn/assignLicense { "error": { "code": "Authorization_RequestDenied", "message": "Insufficient privileges to complete the operation.", "innerError": { "date": "2025-03-19T08:17:35", "request-id": "c368027b-6462-472f-a726-a9b04b26e11e", "client-request-id": "c368027b-6462-472f-a726-a9b04b26e11e" } } } My request body looks as follows: { "addLicenses": [ { "disabledPlans": [], "skuId": "..." } ], "removeLicenses": [] } For assigning a license, I got teams(community) list, and members list. I hope for your selfless help.69Views0likes1CommentGetting 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 api23Views0likes0CommentsAuthentication 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 Vatan82Views0likes1CommentError 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 ?41Views0likes1CommentStatus 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 query26Views0likes0Commentsget SharePoint site items ID
I'm trying to extract all SharePoint News articles from my tenant. I'm almost there but struggling with the last step. My initial graph call is this; It returns all the news posts in a site https://graph.microsoft.com/beta/sites/{SiteID}/pages/microsoft.graph.sitePage?$filter=createdDateTime gt 2025-01-01T00:00:00.0000000Z and promotionKind eq 'newsPost' but there is no way of identifying if a post is published from that call, So I need to do a second call https://graph.microsoft.com/v1.0/sites/{SiteID}/lists/{ListID}/items/{ItemID}/?expand=fields($select=*,FirstPublishedDate) this expands a field 'FirstPublishedDate'. If it doesn't exist, the article has never been published. My problem is I dont get the {ItemID} from the first call. this is the Id visible in the sharepoint list, e.g. 1,2,3 etc. not a GUID. the output of my first graph call looks like this. How can I get the list item ID? "value": [ { "@odata.etag": "\"{404E5AC9-E35D-4895-8E89-E10BBA93B522},25\"", "createdDateTime": "2024-12-16T15:37:08Z", "description": "Hello everyone…", "eTag": "\"{404E5AC9-E35D-4895-8E89-E10BBA93B522},25\"", "id": "404e5ac9-e35d-4895-8e89-e10bba93b522", "lastModifiedDateTime": "2024-12-16T15:43:50Z", "name": "News-Article(4).aspx", "webUrl": "https://company.sharepoint.com/functions/comms/SitePages/News-Article(4).aspx", "title": "Merry Christmas - A message from ", "pageLayout": "article", "promotionKind": "newsPost", "showComments": true,57Views0likes0Comments