Graph API Questions for certificates, throttling, beta functionality
We are starting leverage the Graph API and had a few questions.
We had some concerns regarding the beta functionality for attachments on emails and throttling per tenant.
Our application parses and converts emails into tickets in our application. Once converted, we attach the email email to the ticket along with the attachments.
Our customers (Manage Service Providers), use this functionality in our application for their clients to contact them for support. For example, a MSP's clients could send multiple support requests via email. Since the throttling is done per tenant, it appears we could have a negative impact for these MSPs if many requests are being sent. We are not sure if there is additional throttling per application. When I spoke to a couple Microsoft consultants at Inspire, they said it was done per tenant.
- What is the best practice for using certificates for on premise partners? We have premise partners that can install our software on their own servers and they will use our service to sync exchange calendar to our software’s calendar. Right now we are making it so that our on premise partner has to register their own application within their own azure account and then input the clientId, tenantId, and secret into our software. Our software will use that information to process their events and emails. Is this what is normally done for a premise partner? We were thinking at first of using one application we registered within our own azure and a certificate but we couldn’t think of an easy way to secure the certificate (or even a secret) between the premise partners to share the one application. So we decided to require them to register their own. Now For our cloud version we are registering one application within our azure account and will use a certificate to manage all partners as we control the software there. Is this the recommended way for premise?
- The throttle limit is 10,000 requests per 10 minutes per tenant. Can this be increased?
- To go off the question above on throttling, I know I read that there are other non-listed throttling that can happen. Can you clarify what these could be? i.e. if we are using one registered application for thousands of tenants is that a good idea? And are there any rate limits on applications? And if so should we create multiple applications then (per partner or say a group of 100 etc). What is considered best practice here?
Regarding the email download, we are looking at the functionality to download the MIME content of an email with Microsoft Graph API documented here https://docs.microsoft.com/en-us/graph/outlook-get-mime-message. What are the chances that it will be promoted from beta to general release? Also, what would an estimated time frame for it to be promoted?
We have put in a request (per documentation - https://docs.microsoft.com/en-us/graph/versioning-and-support) to have it promoted - https://officespdev.uservoice.com/forums/224641-feature-requests-and-feedback/suggestions/38209717-promote-get-mime-content-of-a-message-preview.