One Drive Report

Bhupal Koushik 21 Reputation points
2022-12-12T09:58:07.447+00:00

What are the best approaches to do one drive share files report in organization.
Currently implemented using Graph API and seeing lot of performances issues when large number of records shared.
Is there any other approach other than Graph API?
Should we perform Graph API parallel call's for Graph API? Will there be a throttling issue?
Any guidance on this is appreciated.

Thanks for the help in advance.

Microsoft Graph
Microsoft Graph
A Microsoft programmability model that exposes REST APIs and client libraries to access data on Microsoft 365 services.
13,688 questions
OneDrive Management
OneDrive Management
OneDrive: A Microsoft file hosting and synchronization service.Management: The act or process of organizing, handling, directing or controlling something.
1,506 questions
{count} votes

1 answer

Sort by: Most helpful
  1. Gopinath Chennamadhavuni 2,446 Reputation points
    2022-12-23T06:22:46.23+00:00

    Hi @Bhupal Koushik ,

    Hope you are doing well.

    As per the details provided, you are facing "Too Many Requests (throttle) issue" with MS Graph.

    When experiencing throttling, which happens when the number of requests exceed the rate at which the destination can handle over a specific amount of time.

    When it comes to MS Graph API throttling, we suggest:

    • Reduce the number of operations per request.
    • Reduce the frequency of calls.
    • Avoid immediate retries, because all requests accrue against your usage limits.

    There are some best practices to avoid the throttling while using the Graph API requests.

    • Wait the number of seconds specified in the retry-after header.
    • Retry the request.
    • If the request fails again with a 429-error code, you are still being throttled. Continue to use the recommended retry-after delay and retry the request until it succeeds.

    If no retry-after header is provided by the response, we recommend implementing an exponential backoff retry policy. You can also implement more advanced patterns when building large-scale applications.

    Refer this document for more details- Microsoft Graph throttling guidance - Microsoft Graph | Microsoft Learn

    Also, we have some service specific limits in regards with different O365 workloads. Please refer this Microsoft document for this- Microsoft Graph throttling guidance - Microsoft Graph | Microsoft Learn

    JSON batching allows you to optimize your application by combining multiple requests into a single JSON object. Please refer this documentation for more information on batching- Microsoft Graph throttling guidance - Microsoft Graph | Microsoft Learn

    Hope this helps.

    If the answer is helpful, please click Accept Answer and kindly upvote. If you have any further questions about this answer, please click Comment.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.