Enabling billing for Microsoft Teams APIs in Microsoft Graph
We appreciate hearing valuable feedback from our customers and the developer community using metered APIs and services in Microsoft Graph. We use this feedback to continue improving the billing experience. In October 2021 and June 2022, we announced specific requirements for the following Microsoft Teams APIs in Microsoft Graph:
- Microsoft Graph Change Notifications API for Teams notifications
- Microsoft Graph Export APIs for Teams chat messages
- Microsoft Graph Export APIs for Teams channel messages
- Microsoft Graph Patch API for Teams messages
For more information about seeded capacity and consumption fees, please review licensing and payment requirements for Microsoft Graph Teams APIs.
What’s happening next?
We’ve been working with an initial set of application owners who were testing these APIs. Now we’re asking for all applications requiring more than the Evaluation Mode’s seeded capacity to complete the setup process described below.
Existing applications that used these metered APIs in February 2023 were given a grace period from these requirements but must now set up an active Azure billing subscription by June 30th, 2023 to avoid service disruptions. All other applications, including new applications since March 1st, 2023, are already subject to these requirements. (GCC tenants are currently exempt from these requirements.)
Applications without an active Azure subscription will get error “HTTP 402 Payment required” when trying to access the metered APIs using model=A or model=B. Applications using Evaluation Mode will also get Error “HTTP 402 Payment required” when the seeded capacity limit is exceeded.
What you need to do to prepare
To avoid service disruptions to your application(s), please take the following actions if you haven’t done so yet:
- Set up an Azure billing subscription for each application.
- Set up a payment model (model=A or model=B) for each API request of a metered API.
- If your app is using model=A, ensure that your users have the proper E5 licenses and that DLP is enabled.
Please note that even if you have previously provided a subscription ID in the Protected API form, in order for the subscription to be properly configured, you still need to follow the instructions above to finish the setup.
Estimate and monitor costs
For detailed information on seeded capacity and consumption fees, please review licensing and payment requirements for Microsoft Graph Teams APIs. On this page, you’ll also learn how to estimate and monitor the costs for these metered APIs. Once your Azure subscription is properly configured, you should be able to see and monitor the costs using Cost Analysis within the Azure portal within about one week.
If you have questions, please reach out to https://developer.microsoft.com/graph/support.
Thank you for using Microsoft Teams! Visit us at our Microsoft Teams Dev Center. Follow us on Microsoft 365 Developer (@Microsoft365Dev) / Twitter for the latest news.
Should we anticipate this with other products that use Graph, or even Microsoft Graph itself, having a general subscription of certain APIs that are billable and some that aren’t?
I’d like to know in Graph Explorer which are rate-limited or cost extra, is that information being published in the Graph documentation alongside Graph Explorer? Thanks!
Hi Chris! The best place to read up on our current thinking around metered APIs in Microsoft Graph is this blog post.
In terms of which APIs currently have metering associated with them you can find that list here. We’re beginning to think about possible interactions with Graph Explorer so we’ll consider having the information present alongside it there as well.
Thanks for your questions!